
-f cp를 사용하면 침묵해야 한다는 것을 알고 있지만 그렇지 않습니다! 그래요
cp -rf Functional Functionalssssssss
Functional이 존재하지 않으면 'Functional'을 stat할 수 없다는 메시지가 표시됩니다... 하지만 오류 메시지를 보고 싶지 않습니다!! 내가 직접 처리하고 싶어
답변1
출력은 실제로 가 아닌 cannot stat...
으로 전송됩니다 . 질문에 제공한 특정 예의 경우 다음은 다음 으로 리디렉션하여 오류 출력을 억제합니다 .stderr
stdout
stderr
/dev/null
cp -rf Functional Functionalssssssss 2>/dev/null
또한 적어도 cp
내 Debian Linux 서버 버전에서는 -f
보편적인 '침묵' 플래그가 아닙니다. 대신 의 동의어입니다 --force
. 즉, cp
복사하기 전에 기존 대상 파일을 자동으로 지웁니다.
답변2
bash 또는 sh(posix 표준)을 사용하는 경우 [ -f file ] && cp file target
원하는 것입니다.
파일이 존재하는지 확인하고 복사합니다. 오류에 작별 인사를 하세요.