$(shell python3 xxxdx) 返回两行 第一行中间还有若干个空格,这种情况怎么实现,可以用回车换行分割吗
时间: 2024-03-27 09:41:03 浏览: 127
剔除文件内多余的空格和回车换行
如果 `$(shell python3 xxxdx)` 返回的第一行中间有若干个空格,而第二行没有空格,可以通过使用 `$()` 和 `tr` 命令来实现。具体方法如下:
```
output := $(shell python3 xxxdx)
line1 := $(echo $(output) | tr -s ' ' | cut -d ' ' -f 1)
line2 := $(echo $(output) | tr -d '\n' | cut -d ' ' -f 2-)
```
其中,`$()` 用于执行命令并返回结果。`tr -s ' '` 命令用于将多个连续的空格合并成一个空格,`cut -d ' ' -f 1` 命令用于获取第一个单词,即第一行的开头部分。`tr -d '\n'` 命令用于删除第二行的换行符,`cut -d ' ' -f 2-` 命令用于获取第二个单词及其后面的内容,即第二行的全部内容。这样就可以将输出字符串分别获取到 `line1` 和 `line2` 中了。
需要注意的是,上述方法中并没有用回车换行分割字符串,而是使用空格分割字符串。如果需要用回车换行分割字符串,可以将 `$(output)` 中的空格替换成回车换行,然后再使用 `$(word)` 函数或者 `$(wordlist)` 函数进行获取。
阅读全文