Tudo resulta no mesmo arquivo vazio.
Pode até usar apenas >baz2 . Um pouco mais elegante na minha opinião, já que não é dependente de /dev/null estar presente, e não envolve invocar comandos / processos adicionais.
Tenha em mente que, diferentemente de touch , o resultado de >baz2 será um arquivo vazio, mesmo que baz2 já exista e tenha algum conteúdo.
$ touch foo
$ cp /dev/null bar
$ cat /dev/null >baz
$ >baz2
$ ls -l
total 0
-rw-rw-r-- 1 ec2-user ec2-user 0 Apr 14 21:40 bar
-rw-rw-r-- 1 ec2-user ec2-user 0 Apr 14 21:40 baz
-rw-rw-r-- 1 ec2-user ec2-user 0 Apr 14 21:40 baz2
-rw-rw-r-- 1 ec2-user ec2-user 0 Apr 14 21:39 foo
$