표준 리눅스 쉘에서 “scp”와 같은 원격 “ls”를 수행하는 방법이 있습니까?
답변
당신은 항상 이것을 할 수 있습니다 :
ssh user@host ls -l /some/directory
호스트에 SSH를 연결하고 ls를 실행하고 출력을 다시 덤프하고 즉시 연결을 끊습니다.
답변
디렉토리의 모든 파일을 나열하려면 다음을 수행하십시오.
rsync host.name.com:directory/path/'*'
find directory / path -ls와 같은 것
rsync -r host.name.com:directory/path
답변
그들이 원격 파일을 나열하는 방법을 찾고 있지만 ssh (백업 서버의 일반적인 경우)를 통해 원격 서버에 액세스 할 수 없기 때문에 Google을 통해이 질문에 오는 모든 경우 ‘sftp’를 사용할 수 있습니다.
예:
sftp username@hostname.xyz
ls
cd somedir
exit
특정 원격 디렉토리에서 대화식 세션을 시작하십시오.
sftp [user@]host[:dir]
답변
예. SSH와 ls
:
ssh host ls /path
보다 유연하게 스크립트를 작성하거나 host : path 구문에서 scp
사용할 수 있습니다.
답변
가장 많이 사용하는 방법은 ls 결과, 모든 권한과 날짜가없는 간단한 파일 목록을 가져 와서 로컬 파일에 보관하는 것입니다.
{ ssh me@host.com "cd /dir/of/interest; ls -1f *.txt;" } > /home/me/listoffiles.txt
따옴표 내에서 원하는 것을 실행할 수 있습니다. 모든 출력은 로컬 텍스트 파일로 끝납니다. 또는 서버에서 큰 불쾌한 스크립트를 실행하고 모든 출력, 심지어 오류를 캡처하려는 경우 :
{ ssh me@host.com <script.remote.sh } > /home/me/output.log 2>/home/me/output.err