Когда я пытаюсь использовать grep pattern и записывать в файл, иногда он жалуется, что файл bar.txt уже существует, поэтому я должен использовать >>
вместо >
, чтобы перезаписать его.проблемы с перенаправлением в csh
grep 'pattern' foo.txt >> bar.txt
Но если файл не существует, используя >>
он будет жаловаться на нет такого файла или каталога. Есть ли способ заставить оболочку автоматически принять собственное решение? Если этого не существует, создайте файл. Если существует, перезапишите.
'>>' не перезаписывается; либо вы запутались в том, что делает '' '' '', или вы смущены тем, что означает «переписать». – ruakh
Также, согласно http://www.gnu.org/software/bash/manual/bashref.html, '>' не будет жаловаться на то, что файл уже существует, если вы не установили опцию 'noclobber', а'> > 'will * never * жалуется, что файл еще не существует. Вы уверены, что используете Bash? – ruakh
Я использую csh @ruakh – Bryan