文字列を返しますmyString=$(some_command)
。
結果の値myString
は次のとおりです。
there are spaces in this line.
bash
n
結果の値から最後のスペースの後の最後の数文字だけを抽出するには、どの特定のコマンドを入力できますかmyString
?
上記の例の値については、myString
5文字を抽出したいと思います。line.
ただし、「この行には空白が多い」などの他の値の場合、myString
希望のスライス出力は次のようになります。spaces.
答え1
変数が与えられると
myString='there are spaces in this line.'
以下を使用して、スペースで終わる最長の前のコンポーネントを削除できます。パラメータ拡張 ${myString##* }
例えば
$ myString='there are spaces in this line.'
$ echo "${myString##* }"
line.
$
$ myString='this line has many spaces.'
$ echo "${myString##* }"
spaces.