ifs的預設值為空白字元(換行符、製表符或者空格)。
當ifs被設定為逗號時,shell將逗號視為乙個定界符,因此變數$item在每次迭代中讀取由
逗號分隔的子串作為變數值。
如果沒有把ifs設定成逗號,那麼上面的指令碼會將全部資料作為單個字串列印出來。
data="name,***,rollno,location"
我們可以使用ifs讀取變數中的每乙個條目。
oldifs=$ifs
ifs=","
for item in $data;
doecho item: $item
done
ifs=$oldifs
輸出如下:
item: name
item: ***
item: rollno
item: location
字段分隔符IFS
ifs internal field seperator 在linux的shell中預設的分隔符,用來把command line分解成word 字段 ifs可以是white space 空白鍵 tab 鍵 enter 回車鍵 中的乙個或幾個。ifs是shell指令碼中的乙個重要概念,在處理文字資料時...
字段分隔符IFS
ifs 的預設值為空白字元 換行符 製表符或者空格 字段分隔符ifs的簡單案例 bin bash 模擬csv資料 data a,b,c 儲存初始的字段分隔符 oldifs ifs 修改字段分隔符 ifs for x in data doecho xdone 恢復至初始的字段分隔符 ifs oldif...
有關awk欄位分隔符
echo a b c d awk 我的理解是應該把輸出顯示為如下的方式 a b c d dan但執行的結果不是這樣的 a b c d 為什麼啊 echo a b c d awk 或echo a b c d awk begin 或echo a b c d awk 這個方法我知道 我是想知道為什麼ofs...