我正在做一些东西,我在一个文件中存储数据。 但是每次我运行脚本时,它都会被追加到前一个文件中。
我想要帮助我如何删除文件,如果它已经存在。
我正在做一些东西,我在一个文件中存储数据。 但是每次我运行脚本时,它都会被追加到前一个文件中。
我想要帮助我如何删除文件,如果它已经存在。
当前回答
所以在我的情况下,我想删除一个FIFO文件之前,我再次创建它,所以这为我工作:
#!/bin/bash
file="/tmp/test"
rm -rf $file | true
mkfifo $file
| true将继续脚本,即使没有找到文件。
其他回答
If [$(ls <文件>)];rm <file>;fi
同样,如果你用>而不是>>重定向输出,它将覆盖之前的文件
所以在我的情况下,我想删除一个FIFO文件之前,我再次创建它,所以这为我工作:
#!/bin/bash
file="/tmp/test"
rm -rf $file | true
mkfifo $file
| true将继续脚本,即使没有找到文件。
你可以用这个:
#!/bin/bash
file="file_you_want_to_delete"
if [ -f "$file" ] ; then
rm "$file"
fi
我使用的另一个行命令是:
[ -e file ] && rm file
像这样的东西是可行的
#!/bin/sh
if [ -fe FILE ]
then
rm FILE
fi
-f检查它是否是常规文件
-e检查文件是否存在
更多信息请参考if
编辑:-e和-f一起使用是多余的,fo单独使用-f也可以