다른 명령의 출력을 적절한 위치로 리디렉션하는 bash 스크립트를 작성하고 있습니다. 기본적으로 쉘/명령 줄에서 스크립트를 호출하면 STDOUT으로 출력을 보내려고합니다. 그러나 bash 스크립트가 다른 응용 프로그램 (예 : 다른 bash 스크립트, 일부 응용 프로그램 또는 내 경우에는 굉장 창 관리자의 멋진 프롬프트 플러그인)에서 실행될 때 출력을 다른 곳으로 리디렉션하고 싶습니다.쉘이나 다른 스크립트/응용 프로그램에서 bash 스크립트가 호출되었는지 확인하십시오.
bash에서 스크립트가 호출 된 방법을 알 수있는 방법이 있습니까?
다른 방법은 출력 자체를 파이프하는 래퍼 스크립트를 사용하는 것입니다. 그래서, 굉장한 창 관리자는 script-wrapper.sh를 호출합니다.이 줄에는 "./script.sh >> awesome.log"가 포함되어 있습니다. – laher
쉘 스크립트 사용자로서 스크립트가 너무 영리하지 않으려 할 때 선호합니다 . 파일에서 출력을 원한다면 파일에 직접 넣을 수 있습니다. 파일에 출력을 보내기 위해 스크립트에 래퍼 나 플래그를 제공하면 (예 :'-o filename') 간단하고 명확하지만 이상적입니다. –
좋은 지적이지만, 나는 이것을 단순하게하고 싶다. 문제의 명령은 Taskwarrior입니다. 나는 단지'task add blah blah'를 타이핑 할 수 있고 내가 타이핑 한 곳을 걱정하지 않아도되고 싶다. 매번 리디렉션이나 옵션을 입력해야하는 경우 편리하지 않기 때문에 사용하지 않을 것입니다. –