字串的分解 - Linux

Sarah avatar
By Sarah
at 2010-01-22T12:53

Table of Contents

※ 引述《eai ()》之銘言:
: 假如我有一個字串
: 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'`
: 感覺每個方法都不是很漂亮
: 而類似的需求似乎很常碰到
: 不曉得版上的各位前輩們有沒有什麼建議可以分享
: 小弟在此先謝過摟~~

a=01:02:AF:BB:30:21

for ((i=0; i<6; i++)) ; do
b[i]=${a%%:*}
a=${a#*:}
done

--
Tags: Linux

All Comments

安裝 plasmoid

Harry avatar
By Harry
at 2010-01-22T10:00
http://userbase.kde.org/Plasma/Installing_Plasmoids_(zh_TW) Plasmoid 指的就是 plasma 桌面中的元件,例如桌面上的天氣預報元件、資料夾檢視 和 Lancelot 選單都是一個 Plasmoid。 這篇教學會告訴你各種安裝 Plasm ...

sendmail 要他馬上送怎麼辦?

Ingrid avatar
By Ingrid
at 2010-01-22T04:53
大家好..想請問一個sendmail的小問題.. 我積了一堆 mailq 在 mqueue的. 我的系統是sendmail. 請問一下什麼指令可以讓這堆mail立刻送出去? - ...

字串的分解

Connor avatar
By Connor
at 2010-01-22T01:37
假如我有一個字串 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 and#39; and#39; -f1` VAR ...

64 or 32 位元?

Susan avatar
By Susan
at 2010-01-22T01:14
眾所周知: linux 和 windows 都有 32 和 64 位元版本。 目前若裝了 3.75G ram 以上者,都會被建議安裝 64 位元。 可是,好像 32 位元,也是可以使用 3.75 G ram 以上不是嗎? linux: Nowadays, many machines are runnin ...

linux console mode 如何遠端傳送聲音 ?

Liam avatar
By Liam
at 2010-01-21T23:23
請問一下, 如何用 putty 在 ssh 連線下, 遠端傳送聲音呢 ? 例如用 ssh 在 command line 底下播放音樂 (ex: mplayer sample.mp3) 音樂從 linux server 端傳送到 windows 本機端的喇叭發聲. 小弟已知可用 Xming 並設定 ssh ...