16 Commits

Author SHA1 Message Date
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
10 changed files with 273 additions and 180 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
###### Compress
```
$ lch file.zip archive1/ [archive2/] [...]
$ lch file.zip file1 [file2...]
```
###### Decompress
+1 -18
View File
@@ -1,18 +1 @@
Impotancia (0>10) # Nombre de la incidencia.
1 # Al instalar rar.
- Comprobar que wget este en el sistema.
7 # Deep check
- Estudiar la posibilidad de mostrar la lista de extensiones usables en ese momento. Dependiendo de las dependecias instaladas en el sistema.
8 # 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.
9 # El desistalado parece no borrar el man del sistema.
https://kanban.hatthieves.es/b/xAbb5NsGwNsbpxfpY/lch
+14 -12
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
if [ "$UID" != "0" ]; then
echo " Only root can execute this script, sorry."
@@ -17,18 +17,20 @@ cp ./lib/* /usr/lib/lch
chmod 755 /usr/bin/lch
echo " Copied lch in /usr/bin"
if [ -z "$MANPATH" ] && [ $(manpath 2> /dev/null) ];then
MANPATH=$(manpath)
else
MANPATH="/usr/local/man"
fi
if [ -x "$(command -v man)" ]; then
if [ -z "$MANPATH" ] && [ $(manpath 2> /dev/null) ];then
MANPATH=$(manpath)
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."
+35 -61
View File
@@ -1,76 +1,50 @@
#!/bin/bash
VERSION=0.4r6
#!/usr/bin/env bash
VERSION=0.5r4
DEST=$1
shift 1
ORIG=$@
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/check.sh ]]; then . /usr/lib/lch/check.sh; else . ./lib/check.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 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 ""
}
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 [[ -e /usr/lib/lch/installer.sh ]]; then . /usr/lib/lch/installer.sh; else . ./lib/installer.sh; fi
if [ "$DEST" = "--version" ] || [ "$DEST" = "-v" ]
then
then
echo "Linux Compression Humanized $VERSION"
exit 0
else
echo -e "\nlch $VERSION"
echo -e "---------\n"
fi
if [ -z "$DEST" ]
then
help
exit 1
else
if [ -n "$ORIG" ]
then
echo "Compressor:"
echo -e "-----------\n"
compressor $DEST $ORIG
else
echo "Decompressor:"
echo -e "-------------\n"
decompressor $DEST
fi
case $DEST in
"--help" | "-h")
help
;;
"--check" | "-c")
check
;;
"--install" | "-i")
install $DEST $@
;;
*)
if [ -z "$DEST" ]
then
help
exit 1
else
if [ -n "$ORIG" ]
then
echo "Compressor:"
echo -e "-----------\n"
compressor $DEST $ORIG
else
echo "Decompressor:"
echo -e "-------------\n"
decompressor $DEST
fi
fi
;;
esac
exit 0
fi
+9 -4
View File
@@ -1,4 +1,4 @@
.TH LCH 1 "29 September 2020"
.TH LCH 1 "03 October 2020"
.SH NAME
lch \- command\-line compressor and decompressor for humans
.SH SYNOPSIS
@@ -10,9 +10,14 @@ lch \- command\-line compressor and decompressor for humans
simplicity in mind. Automatically select the compression format by file
extension.
Supported extensions:
tar, tar.gz, tar.bz2, tar.xz, bz2, tgz, gz, zip, 7z
Packing/unpacking supported extensions:
7z, bz2, gz, rar, tar, tar.bz2, tar.gz, tar.xz, tgz, zip
Unpacking only supported extensions:
arj, cab, dmg, iso, lzh, lzma, rpm, SquashFS
Unpacking only in beta extensions:
cdi, chd, vmdk, win, xar, z
.SH OPTIONS
.TP
+57 -17
View File
@@ -1,45 +1,85 @@
#!/bin/bash
function lowercase()
{
echo "$DEST" | tr 'A-Z' 'a-z'
}
#!/usr/bin/env bash
function compressor()
{
{
case $(lowercase) in
*.tar)
tar -cvf $DEST $ORIG
if [ -x "$(command -v tar)" ]
then
tar -cvf $DEST $ORIG
else
error_not_install "tar"
fi
;;
*.tar.gz | *.tgz)
tar -czvf $DEST $ORIG
if [ -x "$(command -v tar)" ]
then
tar -czvf $DEST $ORIG
else
error_not_install "tar"
fi
;;
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
tar -c $ORIG | bzip2 > $DEST
if [ -x "$(command -v tar)" ]
then
tar -c $ORIG | bzip2 > $DEST
else
error_not_install "tar"
fi
;;
*.tar.xz | *.txz)
tar -cJf $DEST $ORIG
if [ -x "$(command -v tar)" ]
then
tar -cJf $DEST $ORIG
else
error_not_install "tar"
fi
;;
*.bz2)
bzip2 -c $ORIG > $DEST
if [ -x "$(command -v bzip2)" ]
then
bzip2 -c $ORIG > $DEST
else
error_not_install "bzip2"
fi
;;
*.gz)
gzip -c $ORIG > $DEST
if [ -x "$(command -v gzip)" ]
then
gzip -c $ORIG > $DEST
else
error_not_install "gzip"
fi
;;
*.zip)
zip -r $DEST $ORIG
if [ -x "$(command -v zip)" ]
then
zip -r $DEST $ORIG
else
error_not_install "zip"
fi
;;
*.7z)
7za a $DEST $ORIG
if [ -x "$(command -v 7z)" ]
then
7z a $DEST $ORIG
else
error_not_install "7z"
fi
;;
*.rar)
rar a $DEST $ORIG
if [ -x "$(command -v rar)" ]
then
rar a $DEST $ORIG
else
error_not_install "rar"
fi
;;
*)
echo "Extension not found."
echo -e "For more information run 'lch --help'\n"
;;
esac
echo -e "\nDone"
exit 0
}
+57 -16
View File
@@ -1,37 +1,79 @@
#!/bin/bash
function lowercase()
{
echo "$DEST" | tr 'A-Z' 'a-z'
}
#!/usr/bin/env bash
function decompressor()
{
case $(lowercase) in
*.tar)
tar -xvf $DEST
if [ -x "$(command -v tar)" ]
then
tar -xvf $DEST
else
error_not_install "tar"
fi
;;
*.tar.gz | *.tgz)
tar -xzvf $DEST
if [ -x "$(command -v tar)" ]
then
tar -xzvf $DEST
else
error_not_install "tar"
fi
;;
*.tar.bz2 | *.tbz | *.tbz2 | *.tb2)
tar xjf $DEST
if [ -x "$(command -v tar)" ]
then
tar xjf $DEST
else
error_not_install "tar"
fi
;;
*.tar.xz | *.txz)
tar -xf $DEST
if [ -x "$(command -v tar)" ]
then
tar -xf $DEST
else
error_not_install "tar"
fi
;;
*.bz2)
bzip2 -d $DEST
if [ -x "$(command -v bzip2)" ]
then
bzip2 -d $DEST
else
error_not_install "bzip2"
fi
;;
*.gz)
gzip -d $DEST
if [ -x "$(command -v gzip)" ]
then
gzip -d $DEST
else
error_not_install "gzip"
fi
;;
*.zip)
unzip $DEST
if [ -x "$(command -v unzip)" ]
then
unzip $DEST
else
error_not_install "unzip"
fi
;;
*.7z)
7za e $DEST
*.7z | *.arj | *.cab | *.cdi | *.chd | *.dmg | *.iso | *.lzh | *.lzma | *.rpm | *.squashfs | *.vmdk | *.win | *.xar | *.z)
if [ -x "$(command -v 7z)" ]
then
7z e -y $DEST
else
error_not_install "7z"
fi
;;
*.rar)
unrar x $DEST
if [ -x "$(command -v unrar)" ]
then
unrar x $DEST
else
error_not_install "unrar"
fi
;;
*)
echo "Extension not found."
@@ -40,5 +82,4 @@ function decompressor()
esac
echo -e "\nDone"
exit 0
}
+19 -38
View File
@@ -1,45 +1,27 @@
#!/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" "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 ""
exit 0
}
#!/usr/bin/env bash
function rarInstall(){
if [[ $(uname -m) -eq "x86_64" ]]
if [ -e "$(command -v wget)" ]
then
RAR_URL="https://www.rarlab.com/rar/rarlinux-x64-5.9.1.tar.gz"
RAR_FILE="rarlinux-x64-5.9.1.tar.gz"
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
RAR_URL="https://www.rarlab.com/rar/rarlinux-5.9.1.tar.gz"
RAR_FILE="rarlinux-5.9.1.tar.gz"
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
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()
@@ -100,5 +82,4 @@ function install()
fi
echo -e "\nDependencies installation finished\n"
exit 0
}
+64
View File
@@ -0,0 +1,64 @@
#!/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, tar.gz, tar.xz, tgz, zip"
echo ""
echo "Unpacking only supported extensions:"
echo " arj, cab, dmg, iso, lzh, lzma, rpm, SquashFS"
echo ""
echo "Unpacking only in beta extensions:"
echo " cdi, chd, 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 "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'
}
function error_not_install()
{
echo -e "$@ \e[91mis not Installed\e[0m, use 'lch -i' to install and 'lch -c' to check."
}
+16 -13
View File
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash
if [ "$UID" != "0" ]; then
echo " Only root can execute this script, sorry."
@@ -16,21 +16,24 @@ if [[ -d "/usr/lib/lch" ]]; then
rm -rf "/usr/lib/lch"
fi
# Si nulo manpath
if [ -z "$MANPATH" ]; then
MANPATH=$(manpath)
fi
# Si existe man
if [ -x "$(command -v man)" ]; then
# Si nulo manpath
if [ -z "$MANPATH" ]; then
MANPATH=$(manpath)
fi
MANDIR=${MANPATH%%:*}/man1
MANDIR=${MANPATH%%:*}/man1
# Si man lch.1
if [[ -f "$MANDIR/lch.1" ]]; then
rm "$MANDIR/lch.1"
fi
# 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"
# Si man lch.1.gz
if [[ -f "$MANDIR/lch.1.gz" ]]; then
rm "$MANDIR/lch.1.gz"
fi
fi
echo "=============================="