我有以下任务:
编写一个程序,给定一个目录作为参数,使用gzip压缩tar文件,其名称应采用" dirNameYYYY-MM-DD.tar.gz"形式。如果所述文件存在,则应返回错误消息。
我尝试了什么:
#!/bin/bash
dir=$1
tarName=$dir`date '+%Y-%m-%d'`.tar.gz
if [ -e $tarName]
then
echo "That file already exists."
else
tar -cvz $HOME/$tarName '/'$dir *
fi
为什么这不起作用?关于我如何解决它的任何建议?
答案 0 :(得分:2)
尝试:
#!/bin/bash
dir=$1
tarName=$(basename $dir)$(date '+%Y-%m-%d').tar.gz
if [ -e $tarName ]
then
echo "That file already exists."
else
tar -cvzf $tarName $dir
fi