首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux合并文件

Linux合并文件
EN

Stack Overflow用户
提问于 2022-03-26 13:17:40
回答 2查看 55关注 0票数 2

我正在做一个linux在线课程,但我坚持一个问题,你可以找到下面的问题。

您将得到三个名为a.bfb.bfc.bf的文件。合并这三个文件的内容并将其写入一个名为abc.bf的新文件。遵守顺序: abc.bf必须首先包含a.bf的内容,然后是b.bf的内容,然后是c.bf的内容。

例如,假设给定的文件包含以下内容:

a.bf包含+++。

b.bf包含。

c.bf包含<><><>。

然后,文件abc.bf应该有

代码语言:javascript
复制
+++[][][][]<><><>

作为它的内容。我知道如何合并这3个文件,但是当我使用cat时,我的输出是:

代码语言:javascript
复制
+++
[][][]
<><><>

当我使用粘贴时,输出是"+++ 'a lot of spaces' [][][][] 'a lot of spaces' <><><>"

我需要的输出是+++[][][][]<><><>,我不想要内容之间的空格。有人能帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-03-26 13:35:24

您要做的是删除换行符。

tr

代码语言:javascript
复制
cat {a,b,c}.bf | tr --delete '\n' > abc.bf

使用echosed

代码语言:javascript
复制
echo $(cat {a,b,c}.bf) | sed -E 's/ //g' > abc.bf

使用xargssed

代码语言:javascript
复制
<{a,b,c}.bf xargs | sed -E 's/ //g' > abc.bf

请注意,sed只用于删除空格。

使用catsed

代码语言:javascript
复制
cat {a,b,c}.bf | sed -z 's/\n//g'
票数 2
EN

Stack Overflow用户

发布于 2022-03-26 13:33:41

echo -n "$(cat a.bf)$(cat b.bf)$(cat c.bf)" > abc.bf

  • echo -n不会输出尾随换行符
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71628382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档