How can I create an empty file from the command line?
The touch utility sets the modification and access times of files to the current time of day. If the file doesn't exist, it is created with default permissions.
Will also create an empty file. If the file does already exist, it will be truncated (emptied). To keep the file contents, use
>> for appending as in:
Even if the file exists, the contents will be untouched.
Edit: If you don't have any content to type, this one is faster:
user@host$ :> newfile user@host$ :>> new_or_existing_file
: is the command here. It is not part of the prompt.
cat /dev/null > file1.ext
the exact way there is also another way
echo "" > file2.ext
The difference is file1.ext will be zero bytes and file2.ext would be one byte. You can check this by
ls -l file*.*
vim editor you can also create an empty file.
echo -n > file
creates an empty file, if your version of
echo supports the -n switch.
Or you could use
printf '' > file
$ python -c 'import sys,os;f=sys.argv;os.utime(f,None) if os.path.exists(f) else open(f,"a").close' myfile.txt
Basically,python implementation of
We can make it shorter with this:
$ python -c 'import sys,os;f=sys.argv;'$'\n''with open(f,"a"): os.utime(f,None)' mysecondfile.txt
protected by Sergiy Kolodyazhnyy Jul 10 '17 at 12:00
Thank you for your interest in this question.
Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).
Would you like to answer one of these unanswered questions instead?