53 Commits

Author SHA1 Message Date
Gustavo Adolfo Mesa Roldán 438e6867c5 0.5r9 - Executer 2020-10-03 08:12:14 +02:00
Gustavo Adolfo Mesa Roldán 4e04efe1af 0.5r9 - Executer 2020-10-03 08:01:47 +02:00
Gustavo Adolfo Mesa Roldán 5816870906 0.5r8 2020-10-03 07:19:07 +02:00
Gustavo Adolfo Mesa Roldán b25fc8bd8d 0.5r7 2020-10-03 07:00:43 +02:00
Gustavo Adolfo Mesa Roldán edccc89586 0.5r7 2020-10-03 06:46:02 +02:00
Gustavo Adolfo Mesa Roldán 6b94a50229 0.5r6 - stable 2020-10-03 05:56:48 +02:00
Gustavo Adolfo Mesa Roldán 2596a6a6fb 0.5r6 - More... 2020-10-03 05:40:11 +02:00
Gustavo Adolfo Mesa Roldán b8cb0defe8 0.5r5 - vmdk run 2020-10-03 05:05:40 +02:00
Gustavo Adolfo Mesa Roldán b10ba9ffee 0.5r4 - Readme 2020-10-03 03:52:10 +02:00
Gustavo Adolfo Mesa Roldán 8ae84ab526 0.5r4 - Readme 2020-10-03 03:33:00 +02:00
Gustavo Adolfo Mesa Roldán 6692024ae1 0.5r4 - Readme 2020-10-03 03:27:35 +02:00
Gustavo Adolfo Mesa Roldán 9a13b0168c 0.5r4 - Readme 2020-10-03 03:26:43 +02:00
Gustavo Adolfo Mesa Roldán 446b6647ed 0.5r4 - Readme 2020-10-03 03:20:12 +02:00
Gustavo Adolfo Mesa Roldán fd40e86308 0.5r4 2020-10-03 03:18:22 +02:00
Gustavo Adolfo Mesa Roldán 2c6f419db8 More extensions and check after to run 2020-10-03 03:01:42 +02:00
Gustavo Adolfo Mesa Roldán 0be7239088 0.5r2 - Exit 0 2020-09-30 19:59:07 +02:00
radikal a460d09a15 rar arch installation fixed 2020-09-30 16:15:55 +02:00
Gustavo Adolfo Mesa Roldán ed3cc63cec 0.5r1 2020-09-30 03:25:51 +02:00
Gustavo Adolfo Mesa Roldán 4a276f5a6d 0.5r1 2020-09-30 03:25:20 +02:00
radikal 961b97375b 0.5r0 2020-09-30 02:12:22 +02:00
radikal f1cdd41bc7 Merge branch 'master' of https://gitea.hatthieves.es/cloud/lch into master 2020-09-30 02:08:14 +02:00
radikal 7c486ddcf9 man binary test 2020-09-30 02:07:36 +02:00
Gustavo Adolfo Mesa Roldán 43abad0f77 TODO 2020-09-30 01:45:05 +02:00
radikal 32b30edc2c changed /bin/bash to /usr/bin/env bash 2020-09-30 01:37:15 +02:00
Gustavo Adolfo Mesa Roldán 7c1fd864d7 TODO 2020-09-30 01:23:11 +02:00
Gustavo Adolfo Mesa Roldán 3a0dd2eed6 0.4r8 - Check Wget 2020-09-30 01:07:37 +02:00
radikal 5cd4ad4852 Merge branch 'master' of https://gitea.hatthieves.es/cloud/lch into master 2020-09-30 00:31:41 +02:00
radikal deb162759a minor fix 2020-09-30 00:31:14 +02:00
Gustavo Adolfo Mesa Roldán 80b5375347 0.4r6 - Text fixed 2020-09-30 00:06:01 +02:00
radikal 0f2bef10ad minor correction 2020-09-29 21:40:25 +02:00
radikal 11b9ab21c9 minor fixes 2020-09-29 20:35:16 +02:00
Gustavo Adolfo Mesa Roldán e4f1a6fa1a help fixed 2020-09-29 19:32:33 +02:00
Gustavo Adolfo Mesa Roldán 854aa81abd help fixed 2020-09-29 19:32:23 +02:00
Gustavo Adolfo Mesa Roldán 75ddb34ae0 0.4r6 - unzip instalation 2020-09-29 19:13:17 +02:00
Gustavo Adolfo Mesa Roldán 1590a437a2 0.4r6 - unzip instalation 2020-09-29 19:00:32 +02:00
radikal 1859382339 TODO updated 2020-09-29 18:30:43 +02:00
radikal 93afb48a1e ask for non-free software 2020-09-29 18:26:51 +02:00
radikal 92653b85d4 new revision 2020-09-29 17:39:33 +02:00
radikal 45c9a4185b uppercase control 2020-09-29 17:04:56 +02:00
Gustavo Adolfo Mesa Roldán 1c285fcf57 TODO 2020-09-29 02:13:36 +02:00
ale afdbfffd5a manpath and permissions 2020-09-27 23:22:15 +02:00
ale 2d6e52b093 v0.4r3 2020-09-27 23:12:51 +02:00
Gustavo Adolfo Mesa Roldán 3f59be7544 TODOgit commit -m! 2020-09-27 23:08:25 +02:00
Gustavo Adolfo Mesa Roldán e5d2578f4e 0.4r2 2020-09-27 22:36:00 +02:00
Gustavo Adolfo Mesa Roldán 1ee7f59029 0.4rMu 2020-09-27 22:35:27 +02:00
g 8d0e54c3fc Merge pull request 'Subir archivos a ''' (#1) from m/lch:master into master
Reviewed-on: https://gitea.hatthieves.es/cloud/lch/pulls/1
2020-09-27 20:31:22 +00:00
m 0a755b208e Subir archivos a ''
no probado. uninstall añadido.
2020-09-27 20:24:28 +00:00
Gustavo Adolfo Mesa Roldán e1283f23a1 0.4r1 2020-09-27 19:59:34 +02:00
ale 2a4f587365 sudo repair 2020-09-27 18:14:41 +02:00
ale 7defe8f4ad reload sources and testing readme 2020-09-27 18:06:33 +02:00
ale 3dda858895 function modules 2020-09-27 17:37:30 +02:00
Gustavo Adolfo Mesa Roldán 29d3a6c1af 0.3r2 - Text capitalize 2020-09-27 11:37:21 +02:00
g df4fecb2b3 Actualizar 'README.md' 2020-09-27 07:14:59 +00:00
10 changed files with 404 additions and 284 deletions
+55 -14
View File
@@ -1,8 +1,22 @@
#Linux compressor humanizer
# Linux compressor humanizer
## Installation
###### install
```
sudo ./install.sh
```
###### Uninstall
```
sudo ./uninstall.sh
```
## Usage
###### Compress
```
$ lch file.zip archive1/ [archive2/] [...]
$ lch file.zip file1 [file2...]
```
###### Decompress
@@ -10,18 +24,45 @@ $ lch file.zip archive1/ [archive2/] [...]
$ lch file.zip
```
## Supported extensions
- tar
- tar.gz
- tar.bz2
- tar.xz
- bz2
- tgz
- gz
- zip
- 7z
###### Options
```
$ lch -h - Show help
$ lch -v - Print version
$ lch -c - Check compression systems
$ lch -i - Install the compressors dependencies
```
## Install
## Supported extensions
###### Packing/unpacking:
- 7z
- bz2
- gz
- rar
- tar
- tar.bz2, tbz, tbz2, tb2
- tar.gz, tgz
- tar.xz, txz
- zip
###### Unpacking only:
- arj
- cab
- dmg
- iso
- lzh
- lzma
- rpm
- squashfs
- vdi
- vhd
- vmdk
- win
- xar
- z
## Testing with docker
```
sudo ./install.sh
$ git clone https://gitea.hatthieves.es/cloud/lch
$ cd lch && docker run -it --rm --name lch --workdir /lch -v $(pwd):/lch putyourdistributionhere ./lch -h
```
+1 -17
View File
@@ -1,17 +1 @@
# Formatos que faltan:
- 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.
https://kanban.hatthieves.es/b/xAbb5NsGwNsbpxfpY/lch
+15 -9
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
if [ "$UID" != "0" ]; then
echo " Only root can execute this script, sorry."
@@ -12,19 +12,25 @@ echo " Installing lch"
echo "======================"
echo ""
cp lch /usr/bin/lch
mkdir -p /usr/lib/lch
cp ./lib/* /usr/lib/lch
chmod 755 /usr/bin/lch
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)
fi
else
MANPATH="/usr/local/man"
fi
MANDIR=${MANPATH%%:*}/man1
mkdir -p $MANDIR
cp lch.1 $MANDIR/lch.1
gzip $MANDIR/lch.1
chmod 644 $MANDIR/lch.1.gz
echo " Copied manpage in $MANDIR"
MANDIR=${MANPATH%%:*}/man1
mkdir -p $MANDIR
cp lch.1 $MANDIR/lch.1
gzip $MANDIR/lch.1
chmod 644 $MANDIR/lch.1.gz
echo " Copied manpage in $MANDIR"
fi
echo ""
echo "============================="
echo " lch installed successfully."
+25 -220
View File
@@ -1,225 +1,16 @@
#!/bin/bash
VERSION=0.3r1
#!/usr/bin/env bash
VERSION=0.5r9
DEST=$1
shift 1
ORIG=$@
function decompressor()
{
case $DEST in
*.tar)
tar -xvf $DEST
;;
*.tar.gz | *.tgz)
tar -xzvf $DEST
;;
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
tar xjf $DEST
;;
*.tar.xz | *.txz)
tar -xf $DEST
;;
*.bz2)
bzip2 -d $DEST
;;
*.gz)
gzip -d $DEST
;;
*.zip)
unzip $DEST
;;
*.7z)
7za e $DEST
;;
*.rar)
unrar x $DEST
;;
*)
echo "Extension not found."
echo -e "For more information run 'lch --help'\n"
;;
esac
if [[ -e /usr/lib/lch/resources.sh ]]; then . /usr/lib/lch/resources.sh; else . ./lib/resources.sh; fi
if [[ -e /usr/lib/lch/compressor.sh ]]; then . /usr/lib/lch/compressor.sh; else . ./lib/compressor.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
echo -e "\nDone"
exit 0
}
function compressor()
{
case $DEST in
*.tar)
tar -cvf $DEST $ORIG
;;
*.tar.gz | *.tgz)
tar -czvf $DEST $ORIG
;;
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
tar -c $ORIG | bzip2 > $DEST
;;
*.tar.xz | *.txz)
tar -cJf $DEST $ORIG
;;
*.bz2)
bzip2 -c $ORIG > $DEST
;;
*.gz)
gzip -c $ORIG > $DEST
;;
*.zip)
zip -r $DEST $ORIG
;;
*.7z)
7za a $DEST $ORIG
;;
*.rar)
rar a $DEST $ORIG
;;
*)
echo "Extension not found."
echo -e "For more information run 'lch --help'\n"
;;
esac
echo -e "\nDone"
exit 0
}
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 /home/file -Compress"
echo "$ lch file.zip -Decompress"
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" "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 $0 $DEST'"
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
}
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
exit 0
fi
# executer tar -cvf $DEST $ORIG
if [ "$DEST" = "--version" ] || [ "$DEST" = "-v" ]
then
@@ -228,13 +19,23 @@ then
else
echo -e "\nlch $VERSION"
echo -e "---------\n"
fi
if [ -z "$DEST" ]
then
case $DEST in
"--help" | "-h")
help
;;
"--check" | "-c")
check
;;
"--install" | "-i")
install $DEST $@
;;
*)
if [ -z "$DEST" ]
then
help
exit 1
else
else
if [ -n "$ORIG" ]
then
echo "Compressor:"
@@ -245,4 +46,8 @@ else
echo -e "-------------\n"
decompressor $DEST
fi
fi
;;
esac
exit 0
fi
+11 -9
View File
@@ -1,8 +1,8 @@
.TH LCH 1 "26 September 2020"
.TH LCH 1 "03 October 2020"
.SH NAME
lch \- command\-line compressor and decompressor for humans
.SH SYNOPSIS
\fBlch\fP [filename [filename1] [filename2]...]
\fBlch\fP [-h] [-v] [-c] [-i] [file [file] [file]...]
\fBlch\fP [\fIflags\fP]
.SH DESCRIPTION
@@ -10,9 +10,11 @@ lch \- command\-line compressor and decompressor for humans
simplicity in mind. Automatically select the compression format by file
extension.
Supported extensions:
Packing/unpacking supported extensions:
7z, bz2, gz, rar, tar, tar.bz2, tbz, tbz2, tb2, tar.gz, tgz, tar.xz, txz, zip
tar, tar.gz, tar.bz2, tar.xz, bz2, tgz, gz, zip, 7z
Unpacking only supported extensions:
arj, cab, dmg, iso, lzh, lzma, rpm, squashfs, vdi, vhd, vmdk, win, xar, z
.SH OPTIONS
.TP
@@ -32,17 +34,17 @@ Install compressors and dependencies.
.SH EXAMPLES
.TP
\fBlch foobar.tar.gz\fR
will decompress file foobar.tar.gz
\fBlch file.tar.gz\fR
will decompress file.tar.gz
.TP
\fBlch foobar.tar.gz foobar1/ foobar2/\fP
will compress foobar1/ and foobar2/ in foobar.tar.gz
\fBlch file.tar.gz file1 file2\fP
will compress file1 and file2 in file.tar.gz
.SH BUGS
Report your bugs at <gore@hatthieves.es>
.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>.
+40
View File
@@ -0,0 +1,40 @@
#!/usr/bin/env bash
function compressor()
{
case $(lowercase) in
*.tar)
executer tar -cvf $DEST $ORIG
;;
*.tar.gz | *.tgz)
executer tar -czvf $DEST $ORIG
;;
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
executer tar -c $ORIG | bzip2 > $DEST
;;
*.tar.xz | *.txz)
executer tar -cJf $DEST $ORIG
;;
*.bz2)
executer bzip2 -c $ORIG > $DEST
;;
*.gz)
executer gzip -c $ORIG > $DEST
;;
*.zip)
executer zip -r $DEST $ORIG
;;
*.7z)
executer 7z a $DEST $ORIG
;;
*.rar)
executer rar a $DEST $ORIG
;;
*)
echo "Extension not found."
echo -e "For more information run 'lch --help'\n"
;;
esac
echo -e "\nDone"
}
+40
View File
@@ -0,0 +1,40 @@
#!/usr/bin/env bash
function decompressor()
{
case $(lowercase) in
*.tar)
executer tar -xvf $DEST
;;
*.tar.gz | *.tgz)
executer tar -xzvf $DEST
;;
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
executer tar xjf $DEST
;;
*.tar.xz | *.txz)
executer tar -xf $DEST
;;
*.bz2)
executer bzip2 -d $DEST
;;
*.gz)
executer gzip -d $DEST
;;
*.zip)
executer unzip $DEST
;;
*.7z | *.arj | *.cab | *.dmg | *.iso | *.lzh | *.lzma | *.rpm | *.squashfs | *.vdi | *.vhd | *.vmdk | *.win | *.xar | *.z)
executer 7z e -y $DEST
;;
*.rar)
executer unrar x $DEST
;;
*)
echo "Extension not found."
echo -e "For more information run 'lch --help'\n"
;;
esac
echo -e "\nDone"
}
+85
View File
@@ -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 lch $@'"
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 p7zip-rar 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 p7zip-plugins 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 p7zip-plugins 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 p7zip-plugins 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"
}
+73
View File
@@ -0,0 +1,73 @@
#!/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 "Packing/unpacking supported extensions:"
echo " 7z, bz2, gz, rar, tar, tar.bz2, tbz, tbz2, tb2, tar.gz, tgz, tar.xz, txz, zip"
echo ""
echo "Unpacking only supported extensions:"
echo " arj, cab, dmg, iso, lzh, lzma, rpm, squashfs, vdi, vhd, vmdk, win, xar, z"
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 "7z" "bzip2" "gzip" "rar" "tar" "unrar" "unzip" "zip"
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."
echo -e "Or use 'lch -i' to install all dependences"
fi
echo ""
}
function lowercase()
{
echo "$DEST" | tr 'A-Z' 'a-z'
}
function error_not_install()
{
echo -e "$@ \e[91mis not installed\e[0m, use 'lch -i' to install and 'lch -c' to check."
exit 0
}
function executer()
{
if [ -x "$(command -v $1)" ]
then
"$@"
else
error_not_install $1
fi
}
Executable
+44
View File
@@ -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"