从固定长度的文件中删除特殊字符,例如制表符(\ t)和换行(\ n)

时间:2018-09-18 10:59:37

标签: performance shell

我有一个固定长度的文件,我需要替换文件中的特殊字符\ t。

col1 col2 col3 col4    col5

col4之后有制表符。我需要将其删除,并且我正在使用此命令

tr -d \011 < file.txt > temp.txt

但是当我运行它时,所有空格都被删除,我得到

col1col2col3col4col5

对于\n,我使用sed -i ':a;N;$!ba;s/\n//g' file.txt,但是所有行都变成一行

我需要第一行的col5应该在同一行中

col1col2col3col4 
col5
col1col2col3col4col5

运行命令时,输出为

col1col2col3col4col5col1col2col3col4col5

您能帮我吗?

1 个答案:

答案 0 :(得分:0)

使用以下代码删除\ t

cat temp.txt | tr -d '\t' > temp1.txt

cat temp.txt
col1 col2 col3 col4     col5

cat temp1.txt
col1 col2 col3 col4col5