다음 명령을 사용하여 출력을 다른 파일로 리디렉션하고 있습니다.파일이 존재하는 경우 셸에서 다른 파일로 출력 리디렉션
ls -l >>foo.txt
이 명령은 ls -l
의 결과를 foo.txt에 추가합니다. 파일이 존재하지 않으면 새 파일 foo.txt를 만들고 출력을 새 foo.txt로 리디렉션합니다.
이제 파일로 ls -l
의 출력을 추가/리디렉션 할 수있는 방법이 존재하는 경우와 파일이 이미 존재하고, 그렇지 않으면 리디렉션되지 않습니다 출력 또는을 폐기 할 경우에만 가능합니다.
필자의 경우 foo.txt가 이미 존재하면 출력을 foo.txt에 추가합니다. 그렇지 않으면 출력을 무시합니다.
이 작업을 수행 할 수있는 명령이 있습니까? 작업이 원자 아니라고
if [ -f foo.txt ] ; then
out=foo.txt
else
out=/dev/null
fi
ls -l >> $out
+1 자성을 언급위한 ... 그리고 "그" "그건"과의 적절한 사용을 위해! –