我正在编写一个小的bash脚本来查找FILEB中FILEA的第一行,如果匹配则返回带有文件名的文本。
问题是当我从FILEA中提取文本然后将其与简单的==作为if条件进行比较时,它会返回不同的颜色。
我已经将问题缩小到我正在使用的两个文件的编码
(FILEA = shell存档或古董内核文本的脚本)
(FILEB = ASCII文本,带CRLF,LF行终止符)
有没有办法将FILEA转换为ASCII以避免在通过UNIX进行比较时出现此问题?或者在UNIX之外也适用于我。
答案 0 :(得分:0)
Unix使用单个字符进行行终止。如果要将CRLF文件转换为单字符终止,可以执行以下操作:
sed -e 's/<CTRL-V><CTRL_M>//' filename
其中<CTRL-V>
是用V按下的Control键(命令中不包含<
和>
个字符。