[問題] 字串的分解

看板Linux作者時間16年前 (2010/01/22 01:37), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/2 (看更多)
假如我有一個字串 TMP=01:02:AF:BB:30:21 最後想分解成 VAR1=01 VAR2=02 : VAR6=21 目前止想得到幾種方式 第一種 TMP=01:02:AF:BB:30:21 VAR1=`echo $TMP | cat -d ' ' -f1` VAR2=`echo $TMP | cat -d ' ' -f2` 其他依此類推 第二種 TMP=192.168.13.4 TMP="`echo $TMP | sed 's/:/ /g'`" i=0 for x in $TMP;do eval VAR$i=$x #不用陣列是因為有些shell不支援 i=$((i+1)) done 第三種 assgin_value(){ VAR1=$1 VAR2=$2 VAR3=$3 } TMP=093-251-449 assgin_value `echo $TMP | sed 's/-/ /g'` 感覺每個方法都不是很漂亮 而類似的需求似乎很常碰到 不曉得版上的各位前輩們有沒有什麼建議可以分享 小弟在此先謝過摟~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.56.235.142 ※ 編輯: eai 來自: 61.56.235.142 (01/22 01:39)

01/25 13:42, , 1F
echo $TMP|sed "s/\([0-9A-Z]*\):*/VAR=\1\n/g"
01/25 13:42, 1F
文章代碼(AID): #1BM93j1A (Linux)
討論串 (同標題文章)
文章代碼(AID): #1BM93j1A (Linux)