Bash 中的连接行

发布于 2024-09-29 07:32:45 字数 218 浏览 4 评论 0原文

大多数命令行程序一次只运行一行。

我可以使用常见的命令行实用程序(echo、sed、awk 等)来连接每组两行,还是需要从头开始编写脚本/程序来执行此操作?

$ cat myFile
line 1
line 2
line 3
line 4

$ cat myFile | __somecommand__
line 1line 2
line 3line 4

Most command-line programs just operate on one line at a time.

Can I use a common command-line utility (echo, sed, awk, etc) to concatenate every set of two lines, or would I need to write a script/program from scratch to do this?

$ cat myFile
line 1
line 2
line 3
line 4

$ cat myFile | __somecommand__
line 1line 2
line 3line 4

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

香橙ぽ 2024-10-06 07:32:45
sed 'N;s/\n/ /;'

抓住下一行,并用空格替换换行符。

seq 1 6 | sed 'N;s/\n/ /;'
1 2
3 4
5 6
sed 'N;s/\n/ /;'

Grab next line, and substitute newline character with space.

seq 1 6 | sed 'N;s/\n/ /;'
1 2
3 4
5 6
霊感 2024-10-06 07:32:45
$ awk 'ORS=(NR%2)?" ":"\n"' file
line 1 line 2
line 3 line 4

$ paste - -  < file
line 1  line 2
line 3  line 4
$ awk 'ORS=(NR%2)?" ":"\n"' file
line 1 line 2
line 3 line 4

$ paste - -  < file
line 1  line 2
line 3  line 4
吃兔兔 2024-10-06 07:32:45

不是特定的命令,但是这段 shell 应该可以解决问题:

cat myFile | while read line; do echo -n $line; [ "${i}" ] && echo && i= || i=1 ; done

Not a particular command, but this snippet of shell should do the trick:

cat myFile | while read line; do echo -n $line; [ "${i}" ] && echo && i= || i=1 ; done
阿楠 2024-10-06 07:32:45

您还可以将 Perl 用作:

$ perl -pe 'chomp;$i++;unless($i%2){$_.="\n"};' < file
line 1line 2
line 3line 4

You can also use Perl as:

$ perl -pe 'chomp;$i++;unless($i%2){$_.="\n"};' < file
line 1line 2
line 3line 4
我乃一代侩神 2024-10-06 07:32:45

这是一个不需要切换标志的 shell 脚本版本:

while read line1; do read line2; echo $line1$line2; done < inputfile

Here's a shell script version that doesn't need to toggle a flag:

while read line1; do read line2; echo $line1$line2; done < inputfile
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文