当前位置: 技术问答>linux和unix
请问如何让cat>>不换行
来源: 互联网 发布时间:2016-04-25
本文导语: echo "line 1" |cat>>filename echo "line 2" |cat>>filename 这样写入内容为: line 1 line 2 请问如何才能去掉自动加的'n' 使内容变为: line 1line2 Thank you in advance. | [root@localhost shell]# gawk 'BEGIN{print...
echo "line 1" |cat>>filename
echo "line 2" |cat>>filename
这样写入内容为:
line 1
line 2
请问如何才能去掉自动加的'n' 使内容变为:
line 1line2
Thank you in advance.
echo "line 2" |cat>>filename
这样写入内容为:
line 1
line 2
请问如何才能去掉自动加的'n' 使内容变为:
line 1line2
Thank you in advance.
|
[root@localhost shell]# gawk 'BEGIN{print "line1""line2" > "a.txt"}'
[root@localhost shell]# ll
total 48
-rw-r--r-- 1 root root 11 Nov 14 10:36 a.txt
-rw-r--r-- 1 root root 335 Nov 13 09:22 data1
-rw-r--r-- 1 root root 325 Nov 13 13:04 data2
-rw-r--r-- 1 root root 330 Nov 12 14:47 est
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter.bak
[root@localhost shell]# cat a.txt
line1line2
[root@localhost shell]# ll
total 48
-rw-r--r-- 1 root root 11 Nov 14 10:36 a.txt
-rw-r--r-- 1 root root 335 Nov 13 09:22 data1
-rw-r--r-- 1 root root 325 Nov 13 13:04 data2
-rw-r--r-- 1 root root 330 Nov 12 14:47 est
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter.bak
[root@localhost shell]# cat a.txt
line1line2
|
换行的是echo,不是cat
echo -n "line 1" |cat >>filename
echo -n "line 2" |cat >>filename
echo -n "line 1" |cat >>filename
echo -n "line 2" |cat >>filename
|
[root@localhost shell]# ll
total 40
-rw-r--r-- 1 root root 335 Nov 13 09:22 data1
-rw-r--r-- 1 root root 325 Nov 13 13:04 data2
-rw-r--r-- 1 root root 330 Nov 12 14:47 est
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter.bak
[root@localhost shell]# gawk 'BEGIN{printf "line1" >> "a.txt"}'
[root@localhost shell]# gawk 'BEGIN{printf "line2" >> "a.txt"}'
[root@localhost shell]# ll
total 48
-rw-r--r-- 1 root root 10 Nov 14 10:52 a.txt
-rw-r--r-- 1 root root 335 Nov 13 09:22 data1
-rw-r--r-- 1 root root 325 Nov 13 13:04 data2
-rw-r--r-- 1 root root 330 Nov 12 14:47 est
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter.bak
[root@localhost shell]# less a.txt
line1line2
total 40
-rw-r--r-- 1 root root 335 Nov 13 09:22 data1
-rw-r--r-- 1 root root 325 Nov 13 13:04 data2
-rw-r--r-- 1 root root 330 Nov 12 14:47 est
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter.bak
[root@localhost shell]# gawk 'BEGIN{printf "line1" >> "a.txt"}'
[root@localhost shell]# gawk 'BEGIN{printf "line2" >> "a.txt"}'
[root@localhost shell]# ll
total 48
-rw-r--r-- 1 root root 10 Nov 14 10:52 a.txt
-rw-r--r-- 1 root root 335 Nov 13 09:22 data1
-rw-r--r-- 1 root root 325 Nov 13 13:04 data2
-rw-r--r-- 1 root root 330 Nov 12 14:47 est
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter
-rw-r--r-- 1 root root 377 Nov 3 13:34 letter.bak
[root@localhost shell]# less a.txt
line1line2
|
我没有SunOS,不知道在你的系统上echo命令是如何处理-n参数的
可能你系统上echo没有-n参数吧
问题肯定出在echo上,换行符不是cat上加上去的
查一下用户手册,看看echo有什么参数可以禁止换行
在我的linux系统上,是可以的
|
格式处理为啥不用sed或awk呢?