我有一個字符串,例如time=1234
,我想提取=
後面的數字。但是,該數字可以在0到100000的範圍內(例如 - time=1
,time=23
,time=99999
等)。在bash中查找可變長度的子字符串
我試過類似$(string:5:8}
的東西,但這隻適用於某個特定長度的示例。
如何獲得=
符號後的所有內容的子串?我寧願在沒有外部命令(如cut
或awk
)的情況下執行此操作,因爲我將在可能具有或可能不具有該功能的設備上運行此腳本。我知道有那些使用外部函數的例子,但是我正在嘗試找到一個不使用這種方法的解決方案。
由於OP是通過使用小寫的變量名以下最佳實踐去掉前綴,你可能會做同樣的。 –
... re:「最佳實踐」,請參閱http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html,定義環境變量命名的約定;因爲shell變量共享一個命名空間(也就是說,例如,設置一個名爲PATH的shell變量將覆蓋環境變量PATH的內容),這些約定也適用於shell變量。 –
感謝您根據您的建議更新,但我使用大寫的原因是,它不會與時間=部分混淆:) – Fma