텍스트 파일에서 SSH 입력

텍스트 파일에서 SSH 입력

이 두 가지 문제는 나를 미치게 만들고 있으며 SSH 전문 지식이 별로 없습니다. (그러나 이것은 리디렉션에만 관련된 것으로 생각됩니다)

문제는,

호출된 파일에서 명령 abc.txt으로 여러 줄의 입력을 전달하려고 합니다 . ssh이 작업을 수행하는 데 필요한 명령을 완료하세요.

$ssh _ _ abc.txt (단 두 글자만) (자세한 설명이 도움이 될 것입니다)

그리고

Remote.txt라는 파일에서 여러 줄 입력을 로 전달하려고 ssh하지만 후속 입력의 모든 선행 탭 문자를 제거해야 합니다. 이 작업을 수행하려면 명령을 완료하세요.

$ssh _ _ _ Remote.txt

답변1

다음에서 입력을 전달합니다.현지의file 의 ssh경우 다음과 같이 입력 리디렉션을 사용해야 합니다.

ssh user@server < abc.txt

이 문자가 _별도의 문자여야 합니까? 이 경우 일부 user@host에 대한 별칭으로 x구성 하면 ~/.ssh/config가능합니다 .

ssh x < abc.txt

2번 질문은 제가 잘 이해하지 못해서 답변을 드릴 수 없습니다. Remote.txt가 원격에 있기를 원합니다.

두 번째 질문에 따르면 Remote.txt가 원격 측의 파일이라고 가정합니다. 이 경우 명령은 다음 형식이어야 합니다.

ssh user@server "bash < Remote.txt"

...하지만 이는 문제 설명에 맞지 않으며 _ _ _물론 후행 탭을 제거하려면 다음과 같은 추가 작업이 필요합니다.

ssh user@server "bash < <(sed -e 's/^[    ]*//' Remote.txt)"

즉 이것은확실히두 번째 질문에 대답합니다. 이것이 무엇을 해야 할지 이해하는 데 도움이 되기를 바랍니다 ssh.

편집하다

Q를 다시 읽은 후 "ssh에 여러 줄 입력 전달"이라고 표시되어 있으므로 ssh로 다시 리디렉션을 사용해야 함을 나타냅니다. 이 경우 파일은 로컬이어야 합니다.

ssh user@server < <(sed 's/^[    ]*//' Remote.txt)

하지만 다시 말하지만, 이것이 형식의 답변이 될 자격이 없다고 생각합니다.ssh _ _ _ Remote.txt

답변2

답변 1.

$ssh user@server cat abc.txt

답변 2.

$ssh user@server "sed 's/^[    ]//g' Remote.txt"

답변3

첫 번째 부분의 경우:

$ssh << abc.txt

두 번째 부분의 경우:

$ssh <<- remote.txt

관련 정보