오류를 무시하면서 "ls" 명령의 출력을 파일에 저장

가혹한 진달

그래서 원격 서버에서 ssh를 통해 명령을 실행하고 있으며 이 명령의 모든 출력을 저장해야 하지만 ls: cannot access '/downloads/something.txt': No such file or directory. 오류를 무시하면서 프로세스를 계속 진행하는 방법이 있습니까? 오류가 발생했다는 알림조차 받지 않아도 문제가 되지 않습니다. 오류가 소수의 파일(총 16TB 중 100MB 미만)에 불과하다는 사실을 알고 있기 때문입니다.

내 명령은 다음과 같습니다.

find /downloads/ -type d ! -writable -print0 | xargs -0 -I{.} find {.} -maxdepth 1 -type f | xargs -I% ls -l % > myfile.txt

이 명령으로 달성하려는 것은 다음과 같습니다.

  1. 내가 쓸 수 없는 모든 디렉토리 찾기(재귀적으로)
  2. 쓰기 불가능한 디렉토리의 직계 자식인 파일을 나열합니다.
  3. 다음을 사용하여 이러한 파일에 대한 긴 목록 형식을 가져옵니다. ls -l <filename>
  4. 이 출력을 파일에 저장하면 나중에 python 스크립트를 실행하여 식별된 모든 파일의 전체 크기를 얻을 수 있습니다.

내가 이것을 하는 이유는 내가 삭제할 수 없는 공유 서버의 모든 파일을 식별하기 위함입니다. 이 목표를 달성하는 더 좋은 방법이 있는지 알려주세요...

정말 감사합니다!

루이스 구즈만

에 입력을 가져오는 데 를 ls: cannot access '/downloads/something.txt': No such file or directory사용 find하기 때문에 오류가 발생해서는 안 됩니다 ls. 당신이 그것을 얻는 이유는 당신의 명령에 일부 -print0-0옵션이 없기 때문입니다. 즉, 오류가 발생할 경우를 대비 stderr하여 처음 두 개의 파이프된 명령에서 로 리디렉션해야 합니다. 이러한 변경 후 명령은 다음과 같아야 합니다./dev/nullPermission denied

find /downloads -type d ! -writable -print0 2>/dev/null | xargs -0 -I{.} find {.} -maxdepth 1 -type f -print0 2>/dev/null | xargs -0 -I % ls -l % > myfile.txt

이 명령은 오류를 생성하지 않아야 하지만 16TB를 스캔해야 하는 경우 시간이 걸릴 수 있습니다.

아래 명령을 시도하여 더 빠른지 확인할 수도 있습니다.

find /downloads -type d ! -writable -exec find {} -maxdepth 1 -type f -print0 \; 2>/dev/null | xargs -0 -I % ls -l % > myfile.txt

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

ls 명령의 출력을 쉘 변수에 저장

ls -lrt 출력에서 마지막 파일을 분류하는 한 줄 명령?

특정 폴더 (ls 명령)의 터미널 출력을 txt 파일에 저장하려면 어떻게해야합니까? Pycharm의 경우

실행 된 명령의 출력도 저장하지 않고 "perf stat"출력을 파일에 저장

실행 된 명령의 출력도 저장하지 않고 "perf stat"출력을 파일에 저장

명령 줄 출력을 파일에 저장하려고 할 때 발생하는 오류

ls 명령의 결과를 로컬 머신의 원격 sftp 서버에 저장

명령 줄에서 호출 된 PHP 파일의 출력을 저장하는 방법은 무엇입니까?

파일의 각 줄을 다른 변수에 저장하고 명령 줄 입력 및 출력에서 각 변수를 하나씩 사용

cut 명령의 출력을 변수에 저장하는 방법

여러 명령의 출력을 동일한 파일에 저장

디렉토리의 많은 파일에 명령을 적용하고 파일에 출력 저장

명령 출력을 두 개의 개별 명령으로 파이프하고 출력을 저장하는 방법

여러 명령의 출력을 한 줄에 파일로 저장

명령의 "보이지 않는"출력을 파일에 저장

date 및 watch 명령의 출력을 파일에 저장

whos 명령의 출력을 파일에 저장

명령 줄 출력을 실시간으로 파일에 저장하는 방법

`ls -al` 명령의 출력에서 하드 링크 수를 제거합니다.

Ubuntu의 명령 줄에서 Qt 콘솔 출력을 텍스트 파일에 저장하는 방법

SSIS를 통해 하나의 저장 프로 시저에서 여러 파일을 출력하는 방법

명령 줄의 출력을 텍스트 파일에 저장 하시겠습니까?

slurm 명령의 출력을 파일에 저장하는 방법은 무엇입니까?

콘솔에 명령 줄의 출력을 표시하고 출력을 텍스트 파일에 저장하는 방법은 무엇입니까?

배치 파일을 사용하여 Ping 명령 출력을 변수에 저장

명령 출력 (ls)을 다른 명령의 입력 (sox)에 사용하는 방법은 무엇입니까?

명령 및 함수의 출력을 저장하는 스크립트에서 입력을 캡처하지 마십시오.

JSch를 사용하여 여러 줄의 명령 출력을 변수에 저장하는 방법

PHP를 사용하여 exec () 명령의 출력을 배열에 저장하는 방법