![如何压缩目录自动使用目录名?](https://linux22.com/image/1121937/%E5%A6%82%E4%BD%95%E5%8E%8B%E7%BC%A9%E7%9B%AE%E5%BD%95%E8%87%AA%E5%8A%A8%E4%BD%BF%E7%94%A8%E7%9B%AE%E5%BD%95%E5%90%8D%EF%BC%9F.png)
当我使用 tar 时,我必须指定文件名
tar -zcvf xxx.tar.gz /home/xxx
我总是使用历史命令,并更改目录名称和 tar 文件名。有时我会错误地输入一个存在的 tar 文件名,然后该文件将被覆盖......
windows 下 Winrar 右键菜单有个选项‘压缩到 XXX’,可以自动生成一个以目录名命名的 rar 文件,
在 ubuntu 下怎么实现?
答案1
.bashrc
使用编辑器打开文件并添加以下行:
function tardir() {
tar -zcvf $1.tar.gz $1
return $?
}
export -f tardir
保存.bashrc
并运行此命令:
source .bashrc
现在您应该将函数作为命令调用:
tardir XXX
您可以根据需要添加更多 bash 代码来检查 tar 文件是否已存在或 XXX 是否存在等等。
答案2
提取 tar 文件的目录应该存在:
mkdir foo
tar -xzf bar.tar.gz -C foo