sftp> grep "hello" login.php
Invalid command.
저는 login.php가 포함된 디렉토리에 있습니다.
답변1
sftp
단순한 파일 전송 도구: 다음 목록에 나열된 특정 명령 세트를 지원합니다.맨페이지. man sftp
특정 sftp 버전에 대한 sftp 명령의 정확한 목록을 보려면 자신의 시스템에서 실행 하십시오 .
grep
원격 파일에서 실행 하려면 다음 두 가지 중 하나가 발생해야 합니다.
파일 전송 도구는 원격 파일을 로컬 파일 시스템으로 렌더링하고 필요한 경우 액세스한 각 파일의 내용을 컴퓨터로 전송할 수 있습니다. 그런 다음 시스템의 일반
grep
유틸리티를 사용하여 콘텐츠를 검색할 수 있습니다. 이sshfs
도구는 바로 그렇게 할 수 있습니다. 분명히 파일 시스템은sshfs
실제 로컬 파일 시스템보다 응답 속도가 느립니다.또는 파일 전송 도구가
grep
원격 시스템에서 명령을 실행하고 결과를 사용자에게 반환할 수도 있습니다. 그러나 파일 전송 도구는grep
원격 작업을 구체적으로 지원해야 하며 원격 서버도 해당 특정 작업을 지원하거나 로그인한 사용자로 임의 명령을 실행할 수 있도록 허용해야 합니다. 그러나 후자는 명령이 이미 수행하는 작업이므로ssh
명령이 해당 기능을 복사하는 것은 의미가 없습니다.sftp
또한 지원되는 작업 세트는 sftp
파일 전송과 관련된 작업으로만 작업을 제한하도록 특별히 선택되었습니다. 이것의 가치는 원격 시스템 관리자가 사용자의 sftp
액세스를 허용하지만 로그인 및 임의 명령 실행을 허용하지 않도록 선택할 수 있다는 것입니다.
사용자가 잘 알려져 있고 제한된 작업만 수행할 수 있는 경우 시스템 관리자(또는 보안 환경을 설계하는 시스템 설계자)는 사용자가 할 수 있는 작업과 할 수 없는 작업(발견한 경우)이 악의적인지 효과적으로 추론할 수 있습니다. 사용자가 전체 공개 명령줄 도구 세트에 액세스할 수 있는 경우 작업은 훨씬 더 어려워집니다.
답변2
모든 명령을 실행할 수 있는 권한이 있는 호스트에 sftp 폴더를 마운트할 수 있습니다. 여기서 필요에 따라 폴더를 조작할 수 있습니다.