使用单个文件在当前目录中创建新的 tar 文件
Creating new tar file in current directory using single file
我正在编写一个 bash 脚本,该脚本将检查特定 fileName.log 的 tar 存档是否存在,如果不存在,则使用 fileName.log 创建一个。如果 tar 已经存在,那么我需要向其附加 fileName.log。我从来没有真正使用过 tar 档案,除了解压和解包 .tar.gz 已经给我的文件。我确定我的问题是我的语法,但我无法根据手册页找出正确的语法。
我的代码:
# check if tarball for this file already exists. If so, append it. If not, create new tarball
if [ -e "$newFile.tar" ];
then
echo "tar exists"
tar -cvf "$newFile" "$newFile.tar"
else
echo "no tar exists"
tar -rvf "$newFile"
fi
如果你想将 $newfile
添加到 $newfile.tar
,可以这样:
if [ -f "$newFile.tar" ];
then
echo "tar exists"
tar -rvf "$newFile.tar" "$newFile"
else
echo "no tar exists"
tar -cvf "$newFile.tar" "$newFile"
fi
非常接近,您将 -c
和 -r
标志颠倒了(c
创建,r
追加)并且您想将文件名放在第一位,就像这样:
if [ -e "$newFile.tar" ];
then
echo "tar exists"
tar -rvf "$newFile.tar" "$newFile"
else
echo "no tar exists"
tar -cvf "$newFile.tar" "$newFile"
fi
我正在编写一个 bash 脚本,该脚本将检查特定 fileName.log 的 tar 存档是否存在,如果不存在,则使用 fileName.log 创建一个。如果 tar 已经存在,那么我需要向其附加 fileName.log。我从来没有真正使用过 tar 档案,除了解压和解包 .tar.gz 已经给我的文件。我确定我的问题是我的语法,但我无法根据手册页找出正确的语法。
我的代码:
# check if tarball for this file already exists. If so, append it. If not, create new tarball
if [ -e "$newFile.tar" ];
then
echo "tar exists"
tar -cvf "$newFile" "$newFile.tar"
else
echo "no tar exists"
tar -rvf "$newFile"
fi
如果你想将 $newfile
添加到 $newfile.tar
,可以这样:
if [ -f "$newFile.tar" ];
then
echo "tar exists"
tar -rvf "$newFile.tar" "$newFile"
else
echo "no tar exists"
tar -cvf "$newFile.tar" "$newFile"
fi
非常接近,您将 -c
和 -r
标志颠倒了(c
创建,r
追加)并且您想将文件名放在第一位,就像这样:
if [ -e "$newFile.tar" ];
then
echo "tar exists"
tar -rvf "$newFile.tar" "$newFile"
else
echo "no tar exists"
tar -cvf "$newFile.tar" "$newFile"
fi