gpt4 book ai didi

linux - 如何从apk版本命令返回的结果中去掉\n

转载 作者:太空宇宙 更新时间:2023-11-04 10:38:15 27 4
gpt4 key购买 nike

我正在运行命令:

apk version openssh

输出包括\n。它看起来像这样:

testbox:~# apk version openssh
Installed: Available:
openssh-6.8_p1-r5 < 6.8_p1-r6
testbox:~#

我需要一种方法来更改此输出,使其看起来像这样:

     openssh-6.8_p1-r5 < 6.8_p1-r6 

所以明确地说,我想:

  1. 去掉\n个字符
  2. 删除所有多余的空格
  3. 删除 header 。
  4. 不必保存到文件,只需运行一条命令即可一次性完成所有操作。

有没有办法做到这一点?我一直在谷歌搜索 grep 的例子,我尝试用它来尝试摆脱\n 但还没有成功。

我仍在努力解决这个问题,但如果您有任何建议,我将不胜感激。

编辑 1

我已经使用了 sed,我把它归结为:

testbox:~# apk version openssh | sed 's/Installed://g'| sed 's/Available://g' | sed 's/\n//g'

openssh-6.8_p1-r5 < 6.8_p1-r6

如你所见,我试图摆脱换行符的尝试失败了

编辑2

使用“tr”替换换行符。越来越近。现在我的命令/输出看起来像这样:

testbox:~# apk version openssh | sed 's/Installed://g'| sed 's/Available://g' | tr '\n' ' '
openssh-6.8_p1-r5 < 6.8_p1-r6 testbox:~#

最佳答案

管道输出到

... | sed 1d | tr -s ' '

openssh-6.8_p1-r5 < 6.8_p1-r6

sed 1d 删除标题行

tr -s 将字符(在本例中为空格)压缩到一个实例。

关于linux - 如何从apk版本命令返回的结果中去掉\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36365069/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com