Распаковка [tar|gz|tgz|bz2|tbz2|zip|gz|rar|Z|7z] архивов в Unix/Linux

Распаковка [tar|gz|tgz|bz2|tbz2|zip|gz|rar|Z|7z] архивов в Unix/Linux

Набиваю сайт полезными статьями. Некоторые люди забывают как можно распаковать тот или иной архив. Я расскажу как можно использовать различные инструменты для распаковки tar|gz|tgz|bz2|tbz2|zip|gz|rar|Z|7z архивов в Unix/Linux.

Распаковка [tar|gz|tgz|bz2|tbz2|zip|gz|rar|Z|7z] архивов в в Unix/Linux

Если архив был сжат с помощью GZIP или BZIP2, то следующие команды помогут вам при распаковки.

Распаковка tar архивов в Unix/Linux

$ tar xvf my_archive.tar

Можно просмотреть архив и узнать содержимое:

$ tar -tvf my_archive.tar

Так же, можно извлечь указанный файл, предположим что необходимо достать some_my_archive.txt:

$ tar -xvf my_archive.tar some_my_archive.txt

Вы можете указывать путь к любому файлу в любой папке:

$ tar -xvf my_archive.tar some_folder/some_my_archive.txt

С легкостью можно достать указанную папку из вашего архива, предположим что нужно достать «my_folder»:

$ tar -xvf my_archive.tar my_folder

Распаковка gz архивов в Unix/Linux

Чтобы распаковать, используйте:

$ tar xvzf my_archive.tar.gz

Можно просмотреть архив (сжатый с помощью GZIP) и узнать содержимое:

$ tar -ztvf my_archive.tar.gz

Так же, можно извлечь указанный файл, предположим что необходимо достать some_my_archive.txt:

$ tar -xzvf my_archive.tar.gz some_my_archive.txt

Вы можете указывать путь к любому файлу в любой папке:

$ tar -xzvf my_archive.tar.gz docs/some_my_archive.txt

С легкостью можно достать указанную папку из вашего архива, предположим что нужно достать «my_folder»:

$ tar -xzvf my_archive.tar.gz my_folder

Распаковка tgz архивов в Unix/Linux

Чтобы распаковать, используйте:

$ tar xvzf my_archive.tar.tgz

Распаковка bz2 архивов в Unix/Linux

Чтобы распаковать, используйте:

$ tar xvjf my_archive.tar.bz2

Можно просмотреть архив (сжатый с помощью BZIP2) и узнать содержимое:

$ tar -jtvf tar.bz2

Так же, можно извлечь указанный файл, предположим что необходимо достать some_my_archive.txt:

$ tar -xjvf my_archive.tar.bz2 some_my_archive.txt

Вы можете указывать путь к любому файлу в любой папке:

$ tar -xjvf my_archive.tar.bz2 docs/some_my_archive.txt

С легкостью можно достать указанную папку из вашего архива, предположим что нужно достать «my_folder»:

$ tar -xjvf my_archive.tar.bz2 my_folder

Распаковка tbz2 архивов в Unix/Linux

Чтобы распаковать, используйте:

$ tar xvjf my_archive.tar.tbz2

Если архив был сжат с помощью ZIP, GUNZIP, RAR, BUNZIP2, COMPRESS или 7Z, то следующие команды помогут вам при распаковки.

Распаковка zip архивов в Unix/Linux

Чтобы распаковать, используйте:

$ unzip my_archive.zip

Распаковка gz архивов в Unix/Linux

Чтобы распаковать, используйте:

$ gunzip my_archive.gz

Распаковка rar архивов в Unix/Linux

Чтобы распаковать, используйте:

$ unrar x my_archive.rar

Распаковка bz2 архивов в Unix/Linux

Чтобы распаковать, используйте:

$ bunzip2 my_archive.bz2

Распаковка Z архивов в Unix/Linux

Чтобы распаковать, используйте:

$ uncompress my_archive.Z

Распаковка 7z архивов в Unix/Linux

Чтобы распаковать, используйте:

$ 7z x my_archive.7z

Извлечение Архивов с помощью Shell Функции

Чтобы не запоминать какой ключ использовать при распаковки архивов, можно добавить функцию для этого. Открываем  .bashrc или .zshrc на вашей ОС:

$ vim ~/.bashrc

Или

$ vim ~/.zshrc

И в самый конец, прописываем:

# extract archives
 extract () {
           if [ -f $1 ] ; then
                   # display usage if no parameters given
                   echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
                   case $1 in
                           *.tar.bz2)   tar xvjf "$1"    ;;
                           *.tar.gz)    tar xvzf "$1"    ;;
                           *.tar.xz)    tar xvJf "$1"    ;;
                           *.lzma)      unlzma "$1"      ;;
                           *.bz2)       bunzip2 "$1"     ;;
                           *.rar)       rar x "$1"       ;;
                           *.gz)        gunzip "$1"      ;;
                           *.tar)       tar xvf "$1"     ;;
                           *.tbz2)      tar xvjf "$1"    ;;
                           *.tgz)       tar xvzf "$1"    ;;
                           *.zip)       unzip "$1"       ;;
                           *.xz)        unxz "$1"        ;;
                           *.Z)         uncompress "$1"  ;;
                           *.7z)        7z x "$1"        ;;
                           *)           echo "don't know how to extract '$1'..." ;;
                   esac
           else
                   echo "'$1' is not a valid file!"
           fi
}

Перезагружаем оболочку bashrc :

$ . ~/.bashrc

Или:

$ source ~/.bashrc

PS: Если используете zsh, то чтобы перезапустить ее. Закройте и откройте ваш терминал.

Использование довольно простое, например:

$ extract my_archive.rar

Или

$ extract my_archive.tar.gz2

Или

$ extract my_archive.7z

Запаковать архив с помощью Shell Функции

Открываем  .bashrc или .zshrc на вашей ОС:

$ vim ~/.bashrc

Или

$ vim ~/.zshrc

И в самый конец, прописываем:

# pack directories
   function pack() {
       target=${2%/}
           case $1 in
                       	gz)
                               tar czvf ${target}.tar.gz $target ;;
                       	bz)

			       tar cjvf ${target}.tar.bz2 $target ;;
			xz)
				tar cJvf ${target}.tar.xz $target ;;
			7z)
				7zr a ${target}.7z $target ;;
			rar)
				rar a ${target}.rar $target ;;
			zip)
				zip -r ${target}.zip $target ;;
			*)
				echo "Usage: pack [gzip|bzip2|xz|7z|rar|zip] [target]" ;;
	esac
}

Перезагружаем оболочку bashrc :

$ . ~/.bashrc

Или:

$ source ~/.bashrc

PS: Если используете zsh, то чтобы перезапустить ее. Закройте и откройте ваш терминал.

Использование довольно простое, например:

$ pack gz /some_dir

А у меня все, тема «Распаковка [tar|gz|tgz|bz2|tbz2|zip|gz|rar|Z|7z] архивов в Unix/Linux» завершена.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.