![Unix/Linux에서 echo를 사용하여 파일의 결과를 출력하고 싶습니다 #QueueManager](https://linux55.com/image/192644/Unix%2FLinux%EC%97%90%EC%84%9C%20echo%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%8C%8C%EC%9D%BC%EC%9D%98%20%EA%B2%B0%EA%B3%BC%EB%A5%BC%20%EC%B6%9C%EB%A0%A5%ED%95%98%EA%B3%A0%20%EC%8B%B6%EC%8A%B5%EB%8B%88%EB%8B%A4%20%23QueueManager.png)
A: runmqsc QueueManager < 입력 1
A의 결과를 파일로 출력하고 싶습니다. Input1에는 QueueManager에서 실행될 여러 코드 조각이 포함되어 있습니다.
내 명령은 다음과 같습니다
echo "runmqsc QueueManager < Input1" > OutputResult
그러나 위의 내용은 실제 결과 대신 "runmqsc QueueManager <Input1"만 출력합니다. echo 명령을 사용하여 이 작업을 어떻게 수행할 수 있나요?
다음 논리가 필요하지만 Unix 명령을 모릅니다.
A = runmqsc 큐 관리자 < 입력 1
A > 출력 결과
답변1
프로그램의 출력을 캡처하려고 합니다. 이것은 단순히 ...
unmqsc QueueManager <Input1 >OutputResult
출력을 터미널로 다시 보내려는 경우그리고잡히면 얘기가 달라집니다. 출력을 서로 다른 두 곳으로 보내고 싶습니다. 파일을 쓰는 동안 파일을 읽을 수 있습니다.
unmqsc QueueManager <Input1 >OutputResult &
tail -f OutputResult
그러나 unmqsc가 종료되고 OutputResult를 닫을 때 "tail" 명령은 종료되지 않습니다. 또한 일부 출력이 터미널로 전송되지 않을 수도 있습니다.
나는 사용할 것이다....
unmqsc QueueManager <Input1 | tee OutputResult
(이 tee
명령은 입력을 2개의 출력 스트림에 복사합니다.)