bash 字串擷取 - Linux

Brianna avatar
By Brianna
at 2009-06-18T18:17

Table of Contents

※ 引述《Spig (Spig)》之銘言:
: ※ 引述《Xphenomenon (啦 )》之銘言:
: : 請問各位大大,假如我有一個變數:
: : str='aaa bbb'
: : echo ${str:0:3}
: : echo ${str:4}
: : 這樣可以分別把 aaa 和 bbb 抽取出來,
: : 但是我現在要抽取的字串我無法事先知道他的長度,
: : 有可能另一個字串是 'cccccccc ddddddd',
: : 請問在 bash 裡面有什麼好方法嗎? 先感謝了! :>
: str='aaa bbb'
: for i in $str; do
: echo $i
: done
: Result:
: aaa
: bbb
找到兩種方法,跟大家分享:

# example:
# source='111111 bbbbb
# first=`echo $source | sed -n 's/\([^ ]*\) .*/\1/p'`
# second=`echo $source | sed -n 's/[^ ]* \(.*\)/\1/p'`
#
# OUTPUT:
# first == 111111
# second == bbbbb


另一種:
while read first rest; do echo "$first = $rest"; done < file.txt

--
Tags: Linux

All Comments

Puput avatar
By Puput
at 2009-06-23T05:55
第一種不就適用 cut 一樣意思
Enid avatar
By Enid
at 2009-06-26T21:41
如果空格一多呢? cut 好像就不太適用?
Skylar Davis avatar
By Skylar Davis
at 2009-06-30T11:14
阿 看錯,我應該多加` *' 讓可以 match 多個空格 @@

如何寫一個抓取top後 cpu超過70%的程式 …

Audriana avatar
By Audriana
at 2009-06-18T16:02
我後來辜到一個程式 網址連結:http://0rz.tw/S8dQb 轉貼如下: 當process CPU loading超過90%, 就先行刪除: #!/bin/bash CPULOADING=90 ps auxh | \ while read pro do set -- $pro if [ `ech ...

用Ubuntu上Plurk超慢或是根本連不上

Kelly avatar
By Kelly
at 2009-06-18T14:44
這問題一直都存在著,有些社群網站會出現這問題,像是Plurk,真的很困擾。 問題就是,我的電腦裝了Windows 7、Ubuntu 9.04雙系統,在同樣的網路環境下, 用Windows+Firefox連線就很快速正常,雖然會一直保持Loading狀態,但是所有功能都 能夠正常使用。 換到Ubuntu下, ...

bash 字串擷取

Frederica avatar
By Frederica
at 2009-06-18T13:29
※ 引述《Xphenomenon (啦 )》之銘言: : 請問各位大大,假如我有一個變數: : str=and#39;aaa bbband#39; : echo ${str:0:3} : echo ${str:4} : 這樣可以分別把 aaa 和 bbb 抽取出來, : 但是我現在要抽取的字串我無法事先知道他 ...

bash 字串擷取

Joe avatar
By Joe
at 2009-06-18T12:46
請問各位大大,假如我有一個變數: str=and#39;aaa bbband#39; echo ${str:0:3} echo ${str:4} 這樣可以分別把 aaa 和 bbb 抽取出來, 但是我現在要抽取的字串我無法事先知道他的長度, 有可能另一個字串是 and#39;cccccccc ddd ...

firefox會有殘影@@~

Thomas avatar
By Thomas
at 2009-06-18T10:27
如題atat~ 小弟的fx是3.0.11 os是ubuntu 8.04 在用fx瀏覽網頁時常會有殘影問題發生~ 就是開新頁面後~畫面換過去時都沒有反應~ 要自己把他的文字反白才會跑出來atat~ 我去網路上找一下~發現很少人有這個問題~ 或者有這問題的人都沒有解決~ 請問一下有人會解決這問題嗎 ...