Compare commits
32 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0be7239088 | |||
| a460d09a15 | |||
| ed3cc63cec | |||
| 4a276f5a6d | |||
| 961b97375b | |||
| f1cdd41bc7 | |||
| 7c486ddcf9 | |||
| 43abad0f77 | |||
| 32b30edc2c | |||
| 7c1fd864d7 | |||
| 3a0dd2eed6 | |||
| 5cd4ad4852 | |||
| deb162759a | |||
| 80b5375347 | |||
| 0f2bef10ad | |||
| 11b9ab21c9 | |||
| e4f1a6fa1a | |||
| 854aa81abd | |||
| 75ddb34ae0 | |||
| 1590a437a2 | |||
| 1859382339 | |||
| 93afb48a1e | |||
| 92653b85d4 | |||
| 45c9a4185b | |||
| 1c285fcf57 | |||
| afdbfffd5a | |||
| 2d6e52b093 | |||
| 3f59be7544 | |||
| e5d2578f4e | |||
| 1ee7f59029 | |||
| 8d0e54c3fc | |||
| 0a755b208e |
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
###### Compress
|
###### Compress
|
||||||
```
|
```
|
||||||
$ lch file.zip archive1/ [archive2/] [...]
|
$ lch file.zip file1 [file2...]
|
||||||
```
|
```
|
||||||
|
|
||||||
###### Decompress
|
###### Decompress
|
||||||
|
|||||||
@@ -1,19 +1 @@
|
|||||||
# Formatos que faltan:
|
https://kanban.hatthieves.es/b/xAbb5NsGwNsbpxfpY/lch
|
||||||
- RAR (hecho, falta testear)
|
|
||||||
|
|
||||||
# Al realizar los case, habría que controlar las mayúsculas y minúsculas en las extensiones. "lowercase"
|
|
||||||
|
|
||||||
# Estudiar la posibilidad de mostras las lista de extenciones usables en ese momento. Dependiendo de las dependecias instaladas en el sistema.
|
|
||||||
|
|
||||||
# Al instalar rar. Comprobar que wget este en el sistema.
|
|
||||||
|
|
||||||
# Cambios en 7z:
|
|
||||||
- Ficheros para añadir como solo extracción:
|
|
||||||
ARJ, CAB, DMG, ISO, LZH, LZMA, RPM, SquashFS, VDI, VHD, VMDK, WIM, XAR, Z
|
|
||||||
|
|
||||||
- Comprobar qué dependencias son necesarias para esos formatos.
|
|
||||||
|
|
||||||
- ¿Ficheros que soporta?
|
|
||||||
AR, ARJ, CAB, CHM, CPIO, CramFS, DMG, EXT, FAT, GPT, HFS, IHEX, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, QCOW2, RAR, RPM, SquashFS, UDF, UEFI, VDI, VHD, VMDK, WIM, XAR and Z.
|
|
||||||
|
|
||||||
# Hacer desinstalador
|
|
||||||
+13
-9
@@ -1,4 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
if [ "$UID" != "0" ]; then
|
if [ "$UID" != "0" ]; then
|
||||||
echo " Only root can execute this script, sorry."
|
echo " Only root can execute this script, sorry."
|
||||||
@@ -17,16 +17,20 @@ cp ./lib/* /usr/lib/lch
|
|||||||
chmod 755 /usr/bin/lch
|
chmod 755 /usr/bin/lch
|
||||||
echo " Copied lch in /usr/bin"
|
echo " Copied lch in /usr/bin"
|
||||||
|
|
||||||
if [ -z "$MANPATH" ];then
|
if [ -x "$(command -v man)" ]; then
|
||||||
|
if [ -z "$MANPATH" ] && [ $(manpath 2> /dev/null) ];then
|
||||||
MANPATH=$(manpath)
|
MANPATH=$(manpath)
|
||||||
fi
|
else
|
||||||
|
MANPATH="/usr/local/man"
|
||||||
|
fi
|
||||||
|
|
||||||
MANDIR=${MANPATH%%:*}/man1
|
MANDIR=${MANPATH%%:*}/man1
|
||||||
mkdir -p $MANDIR
|
mkdir -p $MANDIR
|
||||||
cp lch.1 $MANDIR/lch.1
|
cp lch.1 $MANDIR/lch.1
|
||||||
gzip $MANDIR/lch.1
|
gzip $MANDIR/lch.1
|
||||||
chmod 644 $MANDIR/lch.1.gz
|
chmod 644 $MANDIR/lch.1.gz
|
||||||
echo " Copied manpage in $MANDIR"
|
echo " Copied manpage in $MANDIR"
|
||||||
|
fi
|
||||||
echo ""
|
echo ""
|
||||||
echo "============================="
|
echo "============================="
|
||||||
echo " lch installed successfully."
|
echo " lch installed successfully."
|
||||||
|
|||||||
@@ -1,53 +1,14 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
VERSION=0.4r1
|
VERSION=0.5r2
|
||||||
DEST=$1
|
DEST=$1
|
||||||
shift 1
|
shift 1
|
||||||
ORIG=$@
|
ORIG=$@
|
||||||
|
|
||||||
if [ -z /usr/lib/lch/compressor.sh ]; then . /usr/lib/lch/compressor.sh; else . ./lib/compressor.sh; fi
|
if [[ -e /usr/lib/lch/resources.sh ]]; then . /usr/lib/lch/resources.sh; else . ./lib/resources.sh; fi
|
||||||
if [ -z /usr/lib/lch/decompressor.sh ]; then . /usr/lib/lch/decompressor.sh; else . ./lib/decompressor.sh; fi
|
if [[ -e /usr/lib/lch/compressor.sh ]]; then . /usr/lib/lch/compressor.sh; else . ./lib/compressor.sh; fi
|
||||||
if [ -z /usr/lib/lch/check.sh ]; then . /usr/lib/lch/check.sh; else . ./lib/check.sh; fi
|
if [[ -e /usr/lib/lch/decompressor.sh ]]; then . /usr/lib/lch/decompressor.sh; else . ./lib/decompressor.sh; fi
|
||||||
|
if [[ -e /usr/lib/lch/installer.sh ]]; then . /usr/lib/lch/installer.sh; else . ./lib/installer.sh; fi
|
||||||
|
|
||||||
function help()
|
|
||||||
{
|
|
||||||
echo "Help:"
|
|
||||||
echo "-----"
|
|
||||||
echo ""
|
|
||||||
echo "lch [-h] [-v] [-c] [-i] [FILE [FILE]]"
|
|
||||||
echo ""
|
|
||||||
echo "Examples:"
|
|
||||||
echo "$ lch -h - This help"
|
|
||||||
echo "$ lch -v - Print version"
|
|
||||||
echo "$ lch -c - Check compresion systems"
|
|
||||||
echo "$ lch -i - Install the compressors dependencies."
|
|
||||||
echo "$ lch file.zip - Decompress"
|
|
||||||
echo "$ lch file.zip /home/file - Compress"
|
|
||||||
echo "$ lch files.zip /flie1 /flie2 - Compress multiple"
|
|
||||||
echo ""
|
|
||||||
echo "Supported extensions:"
|
|
||||||
echo " rar, tar, tar.gz, tar.bz2, tar.xz, bz2, tgz, gz, zip, 7z"
|
|
||||||
echo ""
|
|
||||||
echo "Run 'man lch' for more info."
|
|
||||||
echo ""
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ "$DEST" = "--help" ] || [ "$DEST" = "-h" ]
|
|
||||||
then
|
|
||||||
help
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$DEST" = "--check" ] || [ "$DEST" = "-c" ]
|
|
||||||
then
|
|
||||||
check
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$DEST" = "--install" ] || [ "$DEST" = "-i" ]
|
|
||||||
then
|
|
||||||
install $DEST $@
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$DEST" = "--version" ] || [ "$DEST" = "-v" ]
|
if [ "$DEST" = "--version" ] || [ "$DEST" = "-v" ]
|
||||||
then
|
then
|
||||||
@@ -56,13 +17,23 @@ then
|
|||||||
else
|
else
|
||||||
echo -e "\nlch $VERSION"
|
echo -e "\nlch $VERSION"
|
||||||
echo -e "---------\n"
|
echo -e "---------\n"
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$DEST" ]
|
case $DEST in
|
||||||
then
|
"--help" | "-h")
|
||||||
|
help
|
||||||
|
;;
|
||||||
|
"--check" | "-c")
|
||||||
|
check
|
||||||
|
;;
|
||||||
|
"--install" | "-i")
|
||||||
|
install $DEST $@
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if [ -z "$DEST" ]
|
||||||
|
then
|
||||||
help
|
help
|
||||||
exit 1
|
exit 1
|
||||||
else
|
else
|
||||||
if [ -n "$ORIG" ]
|
if [ -n "$ORIG" ]
|
||||||
then
|
then
|
||||||
echo "Compressor:"
|
echo "Compressor:"
|
||||||
@@ -73,4 +44,8 @@ else
|
|||||||
echo -e "-------------\n"
|
echo -e "-------------\n"
|
||||||
decompressor $DEST
|
decompressor $DEST
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
exit 0
|
||||||
fi
|
fi
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
.TH LCH 1 "26 September 2020"
|
.TH LCH 1 "29 September 2020"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
lch \- command\-line compressor and decompressor for humans
|
lch \- command\-line compressor and decompressor for humans
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
\fBlch\fP [filename [filename1] [filename2]...]
|
\fBlch\fP [-h] [-v] [-c] [-i] [file [file] [file]...]
|
||||||
\fBlch\fP [\fIflags\fP]
|
\fBlch\fP [\fIflags\fP]
|
||||||
|
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
@@ -12,7 +12,7 @@ extension.
|
|||||||
|
|
||||||
Supported extensions:
|
Supported extensions:
|
||||||
|
|
||||||
tar, tar.gz, tar.bz2, tar.xz, bz2, tgz, gz, zip, 7z
|
rar, tar, tar.gz, tar.bz2, tar.xz, bz2, tgz, gz, zip, 7z
|
||||||
|
|
||||||
.SH OPTIONS
|
.SH OPTIONS
|
||||||
.TP
|
.TP
|
||||||
@@ -32,17 +32,17 @@ Install compressors and dependencies.
|
|||||||
.SH EXAMPLES
|
.SH EXAMPLES
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
\fBlch foobar.tar.gz\fR
|
\fBlch file.tar.gz\fR
|
||||||
will decompress file foobar.tar.gz
|
will decompress file.tar.gz
|
||||||
|
|
||||||
.TP
|
.TP
|
||||||
\fBlch foobar.tar.gz foobar1/ foobar2/\fP
|
\fBlch file.tar.gz file1 file2\fP
|
||||||
will compress foobar1/ and foobar2/ in foobar.tar.gz
|
will compress file1 and file2 in file.tar.gz
|
||||||
|
|
||||||
.SH BUGS
|
.SH BUGS
|
||||||
Report your bugs at <gore@hatthieves.es>
|
Report your bugs at <gore@hatthieves.es>
|
||||||
|
|
||||||
.SH AUTHOR
|
.SH AUTHOR
|
||||||
\fBlch\fP are by Gustavo Adolfo Mesa Roldan <gore@hackthieves.es>
|
\fBlch\fP are by Gustavo Adolfo Mesa Roldan <gore@hackthieves.es>, radikal <radikal@disroot.org>.
|
||||||
|
|
||||||
This document is by radikal <radikal@disroot.org>.
|
This document is by radikal <radikal@disroot.org>.
|
||||||
@@ -1,97 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
function check()
|
|
||||||
{
|
|
||||||
local a=false
|
|
||||||
echo -e "Verification of compression systems:\n"
|
|
||||||
echo -e "Systems\t\t\tStatus"
|
|
||||||
echo "----------------------------------"
|
|
||||||
for i in "rar" "unrar" "tar" "bzip2" "gzip" "zip" "7za"
|
|
||||||
do
|
|
||||||
if ! [ -x "$(command -v $i)" ]
|
|
||||||
then
|
|
||||||
echo -e "$i\t\t\t\e[91mNot Installed\e[0m"
|
|
||||||
$a = true
|
|
||||||
else
|
|
||||||
echo -e "$i\t\t\t\e[32mInstalled\e[0m"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if $a
|
|
||||||
then
|
|
||||||
echo -e "\nIn order to use all the extensions install the packages: tar, bzip2, gzip, zip, 7za, rar, unrar"
|
|
||||||
fi
|
|
||||||
echo ""
|
|
||||||
exit 0
|
|
||||||
}
|
|
||||||
|
|
||||||
function rarInstall(){
|
|
||||||
|
|
||||||
if [[ $(uname -m) -eq "x86_64" ]]
|
|
||||||
then
|
|
||||||
RAR_URL="https://www.rarlab.com/rar/rarlinux-x64-5.9.1.tar.gz"
|
|
||||||
RAR_FILE="rarlinux-x64-5.9.1.tar.gz"
|
|
||||||
else
|
|
||||||
RAR_URL="https://www.rarlab.com/rar/rarlinux-5.9.1.tar.gz"
|
|
||||||
RAR_FILE="rarlinux-5.9.1.tar.gz"
|
|
||||||
fi
|
|
||||||
wget $RAR_URL
|
|
||||||
tar -zxvf $RAR_FILE
|
|
||||||
cd rar
|
|
||||||
cp -v rar unrar /usr/local/bin/
|
|
||||||
cd ..
|
|
||||||
rm -r rar $RAR_FILE
|
|
||||||
echo "rar/unrar installed."
|
|
||||||
}
|
|
||||||
|
|
||||||
function install()
|
|
||||||
{
|
|
||||||
echo -e "Install dependencies\n"
|
|
||||||
|
|
||||||
if [ "$UID" != "0" ]; then
|
|
||||||
echo " Only root can execute this script, sorry."
|
|
||||||
echo " Try 'sudo $@'"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -e "$(command -v rar)" ]
|
|
||||||
then
|
|
||||||
echo "rar installed."
|
|
||||||
else
|
|
||||||
rarInstall
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -x "$(command -v apt)" ]
|
|
||||||
then
|
|
||||||
echo -e "APT system detected\n"
|
|
||||||
apt install -y tar bzip2 gzip zip p7zip-full 1> /dev/null
|
|
||||||
elif [ -n "$(grep "centos" /etc/*-release)" ]
|
|
||||||
then
|
|
||||||
echo -e "CentOS system detected\n"
|
|
||||||
yum install -y -q epel-release 1> /dev/null
|
|
||||||
rpm -U --quiet http://mirrors.kernel.org/fedora-epel/6/i386/epel-release-6-8.noarch.rpm 1> /dev/null
|
|
||||||
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 1> /dev/null
|
|
||||||
yum repolist 1> /dev/null
|
|
||||||
yum install -y -q tar bzip2 gzip zip p7zip 1> /dev/null
|
|
||||||
elif [ -x "$(command -v dnf)" ]
|
|
||||||
then
|
|
||||||
echo -e "DNF system detected\n"
|
|
||||||
dnf install -y -q tar bzip2 gzip zip p7zip 1> /dev/null
|
|
||||||
elif [ -x "$(command -v yum)" ]
|
|
||||||
then
|
|
||||||
echo -e "Yum system detected\n"
|
|
||||||
yum install -y -q tar bzip2 gzip zip p7zip 1> /dev/null
|
|
||||||
elif [ -x "$(command -v pacman)" ]
|
|
||||||
then
|
|
||||||
echo -e "Pacman system detected\n"
|
|
||||||
pacman -Sqy --noconfirm tar bzip2 gzip zip p7zip 1> /dev/null
|
|
||||||
elif [ -x "$(command -v zypper)" ]
|
|
||||||
then
|
|
||||||
echo -e "Zypper system detected\n"
|
|
||||||
zypper install -y tar bzip2 gzip zip p7zip-full 1> /dev/null
|
|
||||||
else
|
|
||||||
echo -e "System installer not detected\n"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo -e "\nDependencies installation finished\n"
|
|
||||||
exit 0
|
|
||||||
}
|
|
||||||
+12
-12
@@ -1,33 +1,34 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
function compressor()
|
function compressor()
|
||||||
{
|
{
|
||||||
case $1 in
|
case $(lowercase) in
|
||||||
*.tar)
|
*.tar)
|
||||||
tar -cvf $1 $2
|
tar -cvf $DEST $ORIG
|
||||||
;;
|
;;
|
||||||
*.tar.gz | *.tgz)
|
*.tar.gz | *.tgz)
|
||||||
tar -czvf $1 $2
|
tar -czvf $DEST $ORIG
|
||||||
;;
|
;;
|
||||||
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
|
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
|
||||||
tar -c $2 | bzip2 > $1
|
tar -c $ORIG | bzip2 > $DEST
|
||||||
;;
|
;;
|
||||||
*.tar.xz | *.txz)
|
*.tar.xz | *.txz)
|
||||||
tar -cJf $1 $2
|
tar -cJf $DEST $ORIG
|
||||||
;;
|
;;
|
||||||
*.bz2)
|
*.bz2)
|
||||||
bzip2 -c $2 > $1
|
bzip2 -c $ORIG > $DEST
|
||||||
;;
|
;;
|
||||||
*.gz)
|
*.gz)
|
||||||
gzip -c $2 > $1
|
gzip -c $ORIG > $DEST
|
||||||
;;
|
;;
|
||||||
*.zip)
|
*.zip)
|
||||||
zip -r $1 $2
|
zip -r $DEST $ORIG
|
||||||
;;
|
;;
|
||||||
*.7z)
|
*.7z)
|
||||||
7za a $1 $2
|
7za a $DEST $ORIG
|
||||||
;;
|
;;
|
||||||
*.rar)
|
*.rar)
|
||||||
rar a $1 $2
|
rar a $DEST $ORIG
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Extension not found."
|
echo "Extension not found."
|
||||||
@@ -36,5 +37,4 @@ function compressor()
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
echo -e "\nDone"
|
echo -e "\nDone"
|
||||||
exit 0
|
|
||||||
}
|
}
|
||||||
|
|||||||
+12
-12
@@ -1,33 +1,34 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
function decompressor()
|
function decompressor()
|
||||||
{
|
{
|
||||||
case $1 in
|
case $(lowercase) in
|
||||||
*.tar)
|
*.tar)
|
||||||
tar -xvf $1
|
tar -xvf $DEST
|
||||||
;;
|
;;
|
||||||
*.tar.gz | *.tgz)
|
*.tar.gz | *.tgz)
|
||||||
tar -xzvf $1
|
tar -xzvf $DEST
|
||||||
;;
|
;;
|
||||||
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
|
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
|
||||||
tar xjf $1
|
tar xjf $DEST
|
||||||
;;
|
;;
|
||||||
*.tar.xz | *.txz)
|
*.tar.xz | *.txz)
|
||||||
tar -xf $1
|
tar -xf $DEST
|
||||||
;;
|
;;
|
||||||
*.bz2)
|
*.bz2)
|
||||||
bzip2 -d $1
|
bzip2 -d $DEST
|
||||||
;;
|
;;
|
||||||
*.gz)
|
*.gz)
|
||||||
gzip -d $1
|
gzip -d $DEST
|
||||||
;;
|
;;
|
||||||
*.zip)
|
*.zip)
|
||||||
unzip $1
|
unzip $DEST
|
||||||
;;
|
;;
|
||||||
*.7z)
|
*.7z)
|
||||||
7za e $1
|
7za e $DEST
|
||||||
;;
|
;;
|
||||||
*.rar)
|
*.rar)
|
||||||
unrar x $1
|
unrar x $DEST
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Extension not found."
|
echo "Extension not found."
|
||||||
@@ -36,5 +37,4 @@ function decompressor()
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
echo -e "\nDone"
|
echo -e "\nDone"
|
||||||
exit 0
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,85 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
function rarInstall(){
|
||||||
|
if [ -e "$(command -v wget)" ]
|
||||||
|
then
|
||||||
|
if [[ "$(uname -m)" == "x86_64" ]]
|
||||||
|
then
|
||||||
|
RAR_URL="https://www.rarlab.com/rar/rarlinux-x64-5.9.1.tar.gz"
|
||||||
|
RAR_FILE="rarlinux-x64-5.9.1.tar.gz"
|
||||||
|
else
|
||||||
|
RAR_URL="https://www.rarlab.com/rar/rarlinux-5.9.1.tar.gz"
|
||||||
|
RAR_FILE="rarlinux-5.9.1.tar.gz"
|
||||||
|
fi
|
||||||
|
wget $RAR_URL
|
||||||
|
tar -zxvf $RAR_FILE
|
||||||
|
cd rar
|
||||||
|
cp -v rar unrar /usr/local/bin/
|
||||||
|
cd ..
|
||||||
|
rm -r rar $RAR_FILE
|
||||||
|
echo "rar/unrar installed."
|
||||||
|
else
|
||||||
|
echo -e "\n\e[91m[Error]\e[0m - Wget is not installed, so rar could not be installed.\nPlease install wget.\n"
|
||||||
|
read -p "Press [ENTER] to continue installing or [CTRL+C] to exit."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function install()
|
||||||
|
{
|
||||||
|
echo -e "Install dependencies\n"
|
||||||
|
|
||||||
|
if [ "$UID" != "0" ]; then
|
||||||
|
echo " Only root can execute this script, sorry."
|
||||||
|
echo " Try 'sudo $0 $@'"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -e "$(command -v rar)" ]
|
||||||
|
then
|
||||||
|
echo "rar installed."
|
||||||
|
else
|
||||||
|
read -p "Do you want to install non-free software? (rar, unrar) [Y/N]: " PRIVSOFT
|
||||||
|
case ${PRIVSOFT} in
|
||||||
|
y|Y)
|
||||||
|
rarInstall;;
|
||||||
|
n|N)
|
||||||
|
echo -e "\nOnly will install free software.\n";;
|
||||||
|
*)
|
||||||
|
echo -e "Options: 'Y' or 'N': ";;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -x "$(command -v apt)" ]
|
||||||
|
then
|
||||||
|
echo -e "APT system detected\n"
|
||||||
|
apt install -y tar bzip2 gzip zip unzip p7zip-full 1> /dev/null
|
||||||
|
elif [ -n "$(grep "centos" /etc/*-release)" ]
|
||||||
|
then
|
||||||
|
echo -e "CentOS system detected\n"
|
||||||
|
yum install -y -q epel-release 1> /dev/null
|
||||||
|
rpm -U --quiet http://mirrors.kernel.org/fedora-epel/6/i386/epel-release-6-8.noarch.rpm 1> /dev/null
|
||||||
|
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 1> /dev/null
|
||||||
|
yum repolist 1> /dev/null
|
||||||
|
yum install -y -q tar bzip2 gzip zip unzip p7zip 1> /dev/null
|
||||||
|
elif [ -x "$(command -v dnf)" ]
|
||||||
|
then
|
||||||
|
echo -e "DNF system detected\n"
|
||||||
|
dnf install -y -q tar bzip2 gzip zip unzip p7zip 1> /dev/null
|
||||||
|
elif [ -x "$(command -v yum)" ]
|
||||||
|
then
|
||||||
|
echo -e "Yum system detected\n"
|
||||||
|
yum install -y -q tar bzip2 gzip zip unzip p7zip 1> /dev/null
|
||||||
|
elif [ -x "$(command -v pacman)" ]
|
||||||
|
then
|
||||||
|
echo -e "Pacman system detected\n"
|
||||||
|
pacman -Sqy --noconfirm tar bzip2 gzip zip unzip p7zip 1> /dev/null
|
||||||
|
elif [ -x "$(command -v zypper)" ]
|
||||||
|
then
|
||||||
|
echo -e "Zypper system detected\n"
|
||||||
|
zypper install -y tar bzip2 gzip zip unzip p7zip-full 1> /dev/null
|
||||||
|
else
|
||||||
|
echo -e "System installer not detected\n"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -e "\nDependencies installation finished\n"
|
||||||
|
}
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
function help()
|
||||||
|
{
|
||||||
|
echo "Help:"
|
||||||
|
echo "-----"
|
||||||
|
echo ""
|
||||||
|
echo "lch [-h] [-v] [-c] [-i] [FILE [FILE...]]"
|
||||||
|
echo ""
|
||||||
|
echo "Examples:"
|
||||||
|
echo "$ lch -h - This help"
|
||||||
|
echo "$ lch -v - Print version"
|
||||||
|
echo "$ lch -c - Check compresion systems"
|
||||||
|
echo "$ lch -i - Install the compressors dependencies"
|
||||||
|
echo "$ lch file.zip - Decompress"
|
||||||
|
echo "$ lch file.zip /home/file - Compress"
|
||||||
|
echo "$ lch files.zip file1 file2 - Compress multiple"
|
||||||
|
echo ""
|
||||||
|
echo "Supported extensions:"
|
||||||
|
echo " rar, tar, tar.gz, tar.bz2, tar.xz, bz2, tgz, gz, zip, 7z"
|
||||||
|
echo ""
|
||||||
|
echo "Run 'man lch' for more info."
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
function check()
|
||||||
|
{
|
||||||
|
local a=false
|
||||||
|
echo -e "Verification of compression systems:\n"
|
||||||
|
echo -e "Systems\t\t\tStatus"
|
||||||
|
echo "----------------------------------"
|
||||||
|
for i in "rar" "unrar" "tar" "bzip2" "gzip" "zip" "unzip" "7za"
|
||||||
|
do
|
||||||
|
if ! [ -x "$(command -v $i)" ]
|
||||||
|
then
|
||||||
|
echo -e "$i\t\t\t\e[91mNot Installed\e[0m"
|
||||||
|
$a = true
|
||||||
|
else
|
||||||
|
echo -e "$i\t\t\t\e[32mInstalled\e[0m"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if $a
|
||||||
|
then
|
||||||
|
echo -e "\nIn order to use all the extensions install the packages: tar, bzip2, gzip, zip, unzip, 7za, rar, unrar"
|
||||||
|
fi
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
function lowercase()
|
||||||
|
{
|
||||||
|
echo "$DEST" | tr 'A-Z' 'a-z'
|
||||||
|
}
|
||||||
Executable
+44
@@ -0,0 +1,44 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if [ "$UID" != "0" ]; then
|
||||||
|
echo " Only root can execute this script, sorry."
|
||||||
|
echo " Try 'sudo $0'"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Si existe el archivo lch
|
||||||
|
if [[ -f "/usr/bin/lch" ]]; then
|
||||||
|
rm /usr/bin/lch
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Si existe el directorio lch
|
||||||
|
if [[ -d "/usr/lib/lch" ]]; then
|
||||||
|
rm -rf "/usr/lib/lch"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Si existe man
|
||||||
|
if [ -x "$(command -v man)" ]; then
|
||||||
|
# Si nulo manpath
|
||||||
|
if [ -z "$MANPATH" ]; then
|
||||||
|
MANPATH=$(manpath)
|
||||||
|
fi
|
||||||
|
|
||||||
|
MANDIR=${MANPATH%%:*}/man1
|
||||||
|
|
||||||
|
# Si man lch.1
|
||||||
|
if [[ -f "$MANDIR/lch.1" ]]; then
|
||||||
|
rm "$MANDIR/lch.1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Si man lch.1.gz
|
||||||
|
if [[ -f "$MANDIR/lch.1.gz" ]]; then
|
||||||
|
rm "$MANDIR/lch.1.gz"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "=============================="
|
||||||
|
echo " lch uninstalled successfully."
|
||||||
|
echo -e "==============================\n"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user