如果文件不存在,如何创建文件否则清除现有文件?

时间:2018-05-07 05:51:24

标签: bash

我有一个打开文件并向其写入一些信息的项目。该文件需要存在,并且需要为空。需要在程序第一次运行时创建该文件,并且每次连续运行都需要清除该文件。

如果文件不存在,bash中是否有一种简单的方法可以创建文件,否则清除现有文件的内容?

1 个答案:

答案 0 :(得分:4)

您不需要使用echo或任何外部实用程序,只需使用shell内置函数即可。只需使用shell重定向运算符(> file)。

$ mkdir testDir    
$ cd testDir/
$ ls -l
total 0
$ > fileThatDoesNotExist
$ ls -1
fileThatDoesNotExist

即使文件中有一些内容,它也会起作用,它会截断其内容

$ echo 'whatever' > fileThatDoesNotExist
$ cat fileThatDoesNotExist
whatever
$ > fileThatDoesNotExist
$ cat fileThatDoesNotExist