在 Debian(以及大多数 Linux 发行版)里,“extract”通常不是某一个固定命令,而是解包/解压缩的统称。下面按常见场景 + 技巧给你总结一套实用配置与用法。
tar -xvf file.tar
tar -xvzf file.tar.gz # gzip
tar -xvjf file.tar.bz2 # bzip2
tar -xvJf file.tar.xz # xz
✅ 技巧:
-v 看过程file file.tar.*
tar -xf file.tar.*
tar -xf file.tar.gz -C /opt/app
tar -xf file.tar.gz path/in/archive
dpkg -c package.deb
dpkg-deb -x package.deb dir/
dpkg-deb -e package.deb dir/DEBIAN
unzip file.zip -d target_dir
unrar x file.rar
7z x file.7z
✅ 安装:
sudo apt install unzip unrar p7zip-full
extract() {
if [ -f "$1" ]; then
case "$1" in
*.tar.bz2) tar -xjf "$1" ;;
*.tar.gz) tar -xzf "$1" ;;
*.tar.xz) tar -xJf "$1" ;;
*.zip) unzip "$1" ;;
*.deb) dpkg-deb -x "$1" ./ ;;
*) echo "未知格式" ;;
esac
fi
}
加入 .bashrc 后可直接:
extract file.tar.gz
解压后权限不对:
tar -xvf file.tar --no-same-owner
保留 SELinux / ACL(极少用):
tar --acls --selinux -xvf file.tar
EngrampaFile Roller如果你指的是:
apt-get source package
zcat initrd.img | cpio -ivd
可以告诉我你具体场景(比如:deb、tar、rootfs、Docker、apt),我可以给更针对性的配置示例。