다음과 같은 bash 스크립트가 있습니다.
테스트 파일
#!/bin/bash
locks="/var/lock/userlocks"
lock=`basename "$0"`.exclusivelock
(
flock -x -w 5 200 || { echo "exiting. $lock already in use."; exit 1; }
echo "$lock acquired."
#do stuff
) 200>$locks/$lock
다음과 같이 모든 출력을 로그 파일로 보낼 수 있습니다.
$ test.sh >> logfile.log 2>&1
하지만 출력 리디렉션을 이와 같은 스크립트에 넣을 수 있나요?
test2.sh
#!/bin/bash
locks="/var/lock/userlocks"
lock=`basename "$0"`.exclusivelock
(
flock -x -w 5 200 || { echo "exiting. $lock already in use."; exit 1; }
echo "$lock acquired."
#do stuff
) 200>$locks/$lock >> logfile.log 2>&1
이제 리디렉션 없이 스크립트를 호출할 수 있습니다.
$ test2.sh