!["flock" 사용 시 출력을 로그 파일로 리디렉션](https://linux55.com/image/114328/%22flock%22%20%EC%82%AC%EC%9A%A9%20%EC%8B%9C%20%EC%B6%9C%EB%A0%A5%EC%9D%84%20%EB%A1%9C%EA%B7%B8%20%ED%8C%8C%EC%9D%BC%EB%A1%9C%20%EB%A6%AC%EB%94%94%EB%A0%89%EC%85%98.png)
다음과 같은 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