#!/bin/bash
index=101,102,103,104,105
/bin/echo "$index" | /bin/awk -F\, '{print $2}'
以上是我的shell腳本(這只是一個演示它不應該是靜態的)當我執行這一點,我返回值「102」這是正確的。awk的shell腳本不給所需的輸出
#!/bin/bash
index=101,102,103,104,105
for i in 1 2 3 4 5
do
/bin/echo "$index" | /bin/awk -F\, '{print $i}'
done
我想打印所有數字......我錯了嗎?
我已經對「null」saprated值進行了一些更改......現在我想要做些什麼改變? 獲取並增加$ i的值?
output of *some command*
1013
1023
12324
13224
3122
2421
#!/bin/bash
index=*some command*
i=1
for LINE in ${OUTPUT} ; do
ans=$(/bin/echo "$index" | /bin/awk -vRS= -vFS="\n" '{print $i}')
i=`expr $i + 1`
done
您使用'/ bin/echo'而不是bash的內置回顯命令的任何特定原因? – ghoti
在我的服務器中,bash版本是1.14.7(1),所以有時它會給我找到一些命令時的錯誤。所以爲了準確性的目的,我使用了二進制文件中的所有命令 –
用「{print \ $$ i}」改變了'{print $ i}'並且它的工作原理 –