how*_*rks 5 string variables bash
我正在编写一个bash脚本,它将执行一个命令并将值存储在一个字符串变量中,现在我需要在某些字符之后拆分字符串.有办法吗?我不能使用分隔符因为格式有点像这样
PV Name /dev/sda2
PV Size 10.39 GB
Run Code Online (Sandbox Code Playgroud)
在这里,我需要获取/ dev/sda2和10.39 GB(如果可能,仅10.39)并将其写入新文件.我不能使用分隔符,因为空间是最初的..我没有做太多的bash脚本.有没有办法做到这一点?
echo "${var:8}"
Run Code Online (Sandbox Code Playgroud)
将回显$var从字符8开始的内容(从零开始).
从第一个空间开始剥离任何东西:
data=${var:8}
echo "${data%% *}"
Run Code Online (Sandbox Code Playgroud)
要仅获取某些字符,请使用cut:
$ echo '1234567' | cut -c2-5
2345
Run Code Online (Sandbox Code Playgroud)
但是,在您的情况下awk看起来是更好的选择:
$ echo ' PV Size 10.39 GB' | awk '{ print $3 }'
10.39
Run Code Online (Sandbox Code Playgroud)
它将文本读取为空格/制表符分隔的列,因此它应该可以正常工作
| 归档时间: |
|
| 查看次数: |
15789 次 |
| 最近记录: |