我已将文件从HDFS复制到我的本地文件系统(全部在RH linux上)。但是,在复制之后,如果我cat
该文件,我会看到以下内容:
[me@ac12 ~]$ cat file_copy
0|name|string
1|phone|string
2|age|string[me@ac12 ~]$
我的期望是:
[me@ac12 ~]$ cat file_copy
0|name|string
1|phone|string
2|age|string
[me@ac12 ~]$
您可以看到第一只猫中似乎缺少换行符,并且shell提示符与最后一行位于同一行。为什么会这样,我该如何诊断这个问题呢?
编辑:我无法编辑输出文件(好吧,也许我可以,但我真的不想 - 我宁愿在源头修复问题)。我想知道为什么没有新行字符..
答案 0 :(得分:0)
您可以使用此sed
在最后一行之后添加换行符:
sed -i.bak $'$s/$/\\n/' file_copy
修改强>
或者使用(感谢@JonathanLeffler):
echo '' >> file_copy