3
說我有一個從ls
在bash腳本以下文件名:如何獲得在bash中字符串的第一部分
things-hd-91-Statistics.db
things.things_domain_idx-hd-38-Data.db
在bash中,這將是多麼能夠得到的第一部分字符串'things'
在兩種情況下? 基本上去掉字符串的其餘部分經過第一-
或.
說我有一個從ls
在bash腳本以下文件名:如何獲得在bash中字符串的第一部分
things-hd-91-Statistics.db
things.things_domain_idx-hd-38-Data.db
在bash中,這將是多麼能夠得到的第一部分字符串'things'
在兩種情況下? 基本上去掉字符串的其餘部分經過第一-
或.
你會使用parameter expansion:
string="things-hd-91-Statistics.db"
echo "${string%%-*}"
things
凡${parameter%%pattern}
的「模式」(-*
)是針對「參數」結束匹配。結果是刪除了最長匹配的'參數'的擴展值。
同樣,對於其他範例,該模式將%%.*
或者,結合在一個二:'$ - '{字符串%% * [。]}。 –
@JonathanLeffler這很酷:謝謝。 – jasonwryan