지정된 위치에 압축을 푼다

지정된 위치에 압축을 푼다

퍼티를 사용하여 압축을 풀고 있는데 잘 작동합니다. 그러나 .NET C# SSH 라이브러리(방문자 SSH 네트워크) 다른 결과를 제공합니다.

SshClient s = new SshClient("ssh_host", "ssh_port", "ssh_username", "ssh_password");
SshCommand c = s.RunCommand("unzip -o \"/home/parent/child/1.zip\ 1.txt"")

퍼티를 통해 동일한 명령을 사용하여 "child"로 추출합니다. 이 명령을 사용하면 1.txt가 "parent"로 끝납니다. ssh 명령의 반환 결과는 Putty의 결과와 동일합니다.

Archive:  /home/parent/child/1.zip
extracting: 1.txt

레벨 1을 추출하는 이유는 무엇입니까? 내가 볼 수 있는 유일한 차이점은 cd를 사용하여 (Putty에서) 디렉토리로 자신의 위치를 ​​찾는 것입니다.

답변1

또는 unzip의 -d 옵션을 사용하여 파일을 추출하려는 디렉터리를 지정합니다.

SshCommand c = s.RunCommand("unzip -d /home/parent/child -o \"/home/parent/child/1.zip\ 1.txt"")

답변2

알고 있었다.

SshCommand c = s.RunCommand("cd /home/parent/child/ && unzip -o 1.zip 1.txt"))

이 구문을 사용하여 폴더를 찾아 압축을 풉니다.

관련 정보