이 스크립트가 결과를 파일로 출력하도록 하려면 어떻게 해야 합니까?
#!/bin/bash
#Use awk to do the heavy lifting.
#For lines with UID>=1000 (field 3) grab the home directory (field 6)
usrInfo=$(awk -F: '{if ($3 >= 1000) print $6}' < /etc/passwd)
IFS=$'\n' #Use newline as delimiter for for-loop
for usrLine in $usrInfo
do
#Do processing on each line
echo $usrLine
done
답변1
./path/to/my/script.bash > output.txt
그런데, 필드 구분 기호를 다음으로 설정할 필요가 없습니다.$'\n'
생각해 보면 for 루프는 전혀 의미가 없습니다(이 스크립트에 추가할 계획이 없다면?). 다음을 실행할 수 있습니다.
awk -F: '{if ($3 >= 1000) print $6}' /etc/passwd > output.txt