실행하려는 스크립트에 모든 원격 명령의 결과를 콘솔의 STDOUT에 출력하는 다음 명령이 있습니다.
ssh -t my-server1.my-domain.net << EOF
./bin/myApp
echo "Hello World"
ls ~/
EOF
이 출력 결과를 로컬 컴퓨터에 어떻게 저장합니까? 일반 파이프 티를 사용하거나 >
예를 들어 스트림을 파일로 리디렉션해 보았습니다 .
ssh -t my-server1.my-domain.net << EOF
./bin/myApp
echo "Hello World"
ls ~/
EOF 2&>1 test.txt
또는
ssh -t my-server1.my-domain.net << EOF
./bin/myApp
echo "Hello World"
ls ~/
EOF 2&>1 | tee test.txt
원격 시스템에서 명령이 실행되는 것을 보고, 콘솔에 출력하고, 로컬 시스템의 파일에 쓰고 싶습니다.
답변1
이는 ssh 명령 뒤가 아닌 명령과 동일한 줄에 ssh
파이프를 연결하여 수행할 수 있습니다 .
STDOUT
파이핑 으로 연결하려면 다음을 test.txt
사용할 수 있습니다.
ssh -t my-server1.my-domain.net << EOF | tee test.txt
./bin/myApp
echo "Hello World"
ls ~/
EOF
에만 출력 test.txt
하고 에는 출력하지 않으려면 다음을 STDOUT
사용할 수 있습니다.
ssh -t my-server1.my-domain.net << EOF > test.txt
./bin/myApp
echo "Hello World"
ls ~/
EOF