可以使用sed命令将每行末尾的换行符替换为空格,实现合并到一行的效果。

具体的脚本如下:

#!/bin/bash

word=$(echo -e "茅台 来源于:js.txt\n傻逼 来源于:mr.txt\n农业银行 来源于:daikuan.txt\n傻逼 来源于:mr.txt\n")

echo $word | sed ':a;N;$!ba;s/\n/ /g'

输出结果如下:

茅台 来源于:js.txt 傻逼 来源于:mr.txt 农业银行 来源于:daikuan.txt 傻逼 来源于:mr.txt

解释:

  • echo -e:输出多行字符串,其中\n表示换行符。
  • sed ':a;N;$!ba;s/\n/ /g':使用sed命令,:a;N;$!ba表示在所有行之间循环,s/\n/ /g表示将每行末尾的换行符替换为空格。
如果-echo-$word-输出的以下多行信息-n茅台-来源于:jstxtn傻逼-来源于:mrtxtn农业银行-来源于:daikuantxtn傻逼-来源于:mrtxtnn如何要求---合并到一行显示nLinux下帮我写个sh脚本

原文地址: https://www.cveoy.top/t/topic/qwG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录