有谁知道这是什么意思?sed命令在bash输入输出文件中
sed -e 's/\r$//' inputfile > outputfile
这是我到目前为止有:
\r
指回车(CR)
所以可能交换毛坯返回滑架?在输入文件中? 我不太确定
有谁知道这是什么意思?sed命令在bash输入输出文件中
sed -e 's/\r$//' inputfile > outputfile
这是我到目前为止有:
\r
指回车(CR)
所以可能交换毛坯返回滑架?在输入文件中? 我不太确定
它正在将文件从CRLF
-终止行改为LF
-终止行。前者往往是Windows型文件,每行以回车/换行符结尾(CRLF
或\r\n
)。
UNIX类型的文件只有一个换行符(LF
或\n
)。
具体而言,sed
命令代用品\r
在一行(由$
表示)与没有结束时,相同s/xyzzy/plugh/
会改变在该行的第一个xyzzy
成plugh
。
sed
是您调用的程序的名称。
-e
告诉sed以下参数是要运行的表达式。
s/\r$//
是一个替换:它告诉sed在行尾($
)用空格替换回车。 Sed为每条线都做到这一点。
inputfile
是sed读取其输入的文件。
>
是重定向操作符,它表示sed的输出将被重定向到outputfile
。
基本上,结果应该与dos2unix
(有时更名为fromdos
)相同。
谢谢。 你知道这个有什么不同吗? sed -e's/$/\ r /'inputfile>输出文件 我猜想它告诉说要用空格替换回车符? – user3576917
@ user3576917:它用行回车符('\ r')替换行尾('$')。请参阅'unix2dos'或'todos'来寻找替代品。 – choroba