actlist文件包含大約15條記錄。我想打印/存儲變量中的每一行以執行進一步的操作。腳本運行但echo $ j顯示空白值。什麼是問題? 我的腳本:awk在變量中的用法
#/usr/bin/sh
acList=/root/john/actlist
Rowcount=`wc -l $acList | awk -F " " '{print $1}'`
for ((i=1; i<=Rowcount; i++)); do
j=`awk 'FNR == $i{print}' $acList`
echo $j
done
文件:actlist
cat > actlist
5663233332 2223 2
5656556655 5545 5
4454222121 5555 5
.
.
.
您可以使用'行數= $(WC -l <$ aclist)'代替,如果你提供它'像stdin'的文件'wc',它不會告訴你文件名(因爲它不知道它),然後你不需要'awk'來刪除文件名。 – 2014-09-21 18:52:46
問題是您使用shell來操作文本而不是UNIX文本操作工具awk。 shell是一個可以調用工具的環境,就是這樣。 – 2014-09-21 21:53:25