나는 현재의 표준 출력 방향 전환을 얻으려고하고 있고, 약간의 문제가있다.Linux 파일 설명자 - 현재 리디렉션 stdout 파일을 가져 오는 중입니까?
myscript.sh > /tmp/output.log
는 myscript.sh에서, 나는 그것이로 출력되는 파일 무엇인지 찾아야 :
는 항상 표준 출력 리디렉션 즉 실행되는 스크립트가 있습니다.
나는 (작동하지 않는)이 모델을 시도하고있다 : 예를 들어, 로그 파일 = /tmp/sflq.r3f를 출력하는 것
logfile=$(readlink -f /proc/self/fd/1)
합니다. 대신에 /tmp/output.log로 가야한다는 것을 알아야합니다.
이것도 가능합니까? 이 중요한 경우
나는 ...
감사 쉘을 콘 사용하고 있습니다!
로그 파일은/proc/18117/fd/3 – John
@ 존 죄송합니다. ksh에서 테스트 했어야합니다. 'ksh'에 대해서는 위와 같이 중괄호에 추가해야합니다. 그러면 그것은 나를 위해 작동합니다 ('ksh version sh (AT & T Research) 93u + 2012-08-01') – PSkocik
그랬습니다! 왜 중괄호가 필요한지 짧은 버전이 있습니까? 아니면 작업을보고 난 후에 시간을 보내야합니까? 감사합니다! – John