2017-10-10 9 views
-1

mv folder 줄에이 폴더 안에 하나의 소켓 파일이 있기 때문에 혼란스러운 메시지가 표시됩니다.소켓 파일로 인한 리눅스 이동 오류를 피하는 방법은 무엇입니까?

이 오류를 표시하지 않는 방식으로 변경하는 방법이 있습니까? 수명이 일시적이기 때문에이 소켓 파일은별로 신경 쓰지 않아 폴더를 다른 안전한 위치로 이동 (보관)해야합니다.

mv /tmp/env-DkKZrr3 /home/user/some-path/ 
mv: cannot stat ‘/tmp/ir-venv-DkKZrr3/10.0.0.101-cloud-user’: No such file or directory 

나는 표준어를 리디렉션 할 수 있다고 알고 있지만 이러한 특정 종류의 오류 만 피하거나 무시하는 것을 선호합니다.

+0

경고가 표시 되더라도 다른 파일은 이동 한 것입니까? – Aserre

+0

@Aserre 예, 그건 단지 경고이지만 CI 로그를 혼란스럽게 만들고 그것을 피하고 싶습니다. – sorin

+0

'mv'의 모든 오류를 억제하고 싶다면, stderr의 출력을 리디렉션 할 수 있습니다 :'mv/tmp/env-DkKZrr3/home/user/some-path/2>/dev/null'. 그러나 이것은 권한 오류를 포함하여'mv'에서 모든 오류를 지 웁니다. – Aserre

답변

0

AFAIK, 특정 유형의 오류 메시지를 "무시"할 수는 없습니다. 귀하의 요구 사항을 위해, 나는 당신보다 먼저 파일 형식을 확인하는 더 좋은 방법이 될 수 있다고 생각합니다 mv. 파일이에 의해 소켓 경우 확인할 수 있습니다 : 스크립트에이 검사를 추가

[ -S <yourFilePath> ] 

는, 그 결과가 True 인 경우, 파일을 이동 건너 뜁니다. 나는 그것이 좋아야한다라고 생각한다.

Grep 트릭 여기 IMO가 없기 때문에 존재하지 않는 파일을 mv로 만들면 오류 메시지가 동일하게 보이므로 실제로 존재하지 않는 오류 또는 소켓 파일 오류를 구분할 수 없기 때문입니다.