#!/bin/bash #JKA - ZIP #A script for de/compress files and folders in many formats #Author: JKA Network - contacto@jkanetwork.com version="0.1" if [ -z $1 ];then echo "No option specified, use jkazip -h" elif [ $1 = "-h" ];then echo " synopsis: jkazip [option] [format (when compress)] [file or directory]" echo "" echo " -d, decompress file" echo " -c, compress file" echo " -h, show help box and exit" echo " -v, show version" echo "" echo " Supported formats: tar,gzip,bzip2,xzip,7z,zip and rar" echo " Only one file or directory (some formats don't support directories), for more options use the each program individualy" echo "" elif [ $1 = "-v" ];then echo "jkazip by JKA Network; version $version" elif [ $1 = "-d" ];then if [ -z $2 ];then echo "No file or directory specified" exit elif [ -d $2 ];then echo "The directory $2 will be decompressed" elif [ -f $2 ];then echo "The file $2 will be decompressed" else echo "$2 no such file or directory" exit fi format=$(ls $2 | cut -f2 -d".") if [ $format = "tar" ];then format2=$(ls $2 | cut -f3 -d".") if [ -z $format2 ];then tar xvf $2 echo "$2 has been decompressed" elif [ $format2 = "gz" ];then tar xvzf $2 echo "$2 has been decompressed" elif [ $format2 = "bz2" ];then tar xvjf $2 echo "$2 has been decompressed" elif [ $format2 = "xz" ];then tar xvJf $2 echo "$2 has been decompressed" fi elif [ $format = "tbz2" ];then tar xvjf $2 echo "$2 has been decompressed" elif [ $format = "tgz" ];then tar xvjf $2 echo "$2 has been decompressed" elif [ $format = "txz" ];then tar xvJf $2 echo "$2 has been decompressed" elif [ $format = "7z" ];then 7z e $2 echo "$2 has been decompressed" elif [ $format = "zip" ];then unzip $2 echo "$2 has been decompressed" elif [ $format = "gz" ];then gzip -dk $2 echo "$2 has been decompressed" elif [ $format = "bz2" ];then bzip2 -d $2 echo "$2 has been decompressed" elif [ $format = "rar" ];then rar -x $2 echo "$2 has been decompressed" else echo "Format $format unknown" fi elif [ $1 = "-c" ];then if [ -z $3 ];then echo "No file or directory specified" exit elif [ -d $3 ];then echo "The directory $3 will be compressed" elif [ -f $3 ];then echo "The file $3 will be compressed" else echo "$3 no such file or directory" exit fi if [ -z $2 ];then echo "No format specified" elif [ $2 = "tar" ] 2> /dev/null ;then tar cvf $3.tar $3 echo "$3 has been compressed" elif [ $2 = "tar.gz" ] 2> /dev/null ;then tar cvzf $3.tar.gz $3 echo "$3 has been compressed" elif [ $2 = "tar.bz2" ] 2> /dev/null ;then tar cvjf $3.tar.bz2 $3 echo "$3 has been compressed" elif [ $2 = "tar.xz" ] 2> /dev/null ;then tar cvJf $3.tar.xz $3 echo "$3 has been compressed" elif [ $2 = "tbz2" ] 2> /dev/null ;then tar cvjf $3.tbz2 $3 echo "$3 has been compressed" elif [ $2 = "tgz" ] 2> /dev/null ;then tar cvjf $3.tgz $3 echo "$3 has been compressed" elif [ $2 = "txz" ] 2> /dev/null ;then tar cvJf $3.txz $3 echo "$3 has been compressed" elif [ $2 = "7z" ] 2> /dev/null ;then 7z a $3.7z $3 echo "$3 has been compressed" elif [ $2 = "zip" ] 2> /dev/null ;then zip $3.zip $3 echo "$3 has been compressed" elif [ $2 = "gz" -o $2 = "gzip" ] 2> /dev/null ;then gzip -9k $3 echo "$3 has been compressed" elif [ $2 = "bz2" -o $2 = "bzip2" ] 2> /dev/null ;then bzip2 $3 echo "$3 has been compressed" elif [ $2 = "rar" ] 2> /dev/null ;then rar -a $3.rar $3 echo "$3 has been compressed" else echo "Format $2 unknown" fi fi