다음은 my bash 스크립트입니다. awk에서 비교하기 위해 varible oid를 사용하면 일치하는 행이 표시되지 않습니다.비교에서 변수를 사용할 때 awk가 bash 스크립트에서 작동하지 않습니다.
oid="3586302804992"
SYMBOL_CSV_FILE="symbol/BAC"
awk -F, '$5 == $oid' "$SYMBOL_CSV_FILE"
echo "2nd"
awk -F, '$5 == "3586302804992"' "$SYMBOL_CSV_FILE"
O는/P는
2nd
BAC,1,O,1,3586302804992
symbol/BAK
파일의 내용이,
BAC,1,O,1,3586302804992o
가 3 줄에, 약 $ OID ""가하고 있습니다 어떤 차이가 나던입니다.
는'awk' 스크립트 내부 bash는 변수를 사용하기를, 그것들을'-v'로 "전달"해야합니다. 예를 들어'num = 3; awk -v n = $ num 'BEGIN {print n}''. AWK 같은 – fedorqui