我有一个txt
包含如下内容的文件:
Adedunmola Okikiola Adewole 512.035
215−39 ^M
Ademir Cleto de Oliveira 055.735
445−13 ^M
Adilson Wagner Gandu 559.995
780−28 ^M
当我运行我的脚本时,
#!/usr/bin/bash
file="$@"
while IFS= read -r cmd; do
printf '%s\n' "$cmd"
done < "$file"
./readline.sh list.txt
我得到的输出格式如下:
Yves Levi Paixao Lapa 022.485 165"24
Yvin Miguel Juanico Carvalho 623.200 765"20
Yzis Silva Lima Santos 372.341 215"39
Zilmara de Nazare Lucas Pimentel 282.147 230"44
但是,我无法使 grep 使用以下模式:
./readline.sh list.txt | grep "230\"44"
这是课程的代码。在这个示例性输出中,我预计它至少应该给我以下行:
Zilmara de Nazare Lucas Pimentel 282.147 230"44
我究竟做错了什么?
txt文件链接: https://drive.google.com/file/d/1azr_GSB2rBHd9dPzx43vrRdqkxkWb60G/view?usp=sharing
编辑2:
更改文件编码以utf-8
使输出等于 vim 或 emacs 最初显示的内容。但是,例如,我仍然无法成功 grep“230-44”。
答案1
答案2
尝试使用 grep 和 sed 效果很好
./readline.sh list.txt |grep '230\"44'
output: Zilmara de Nazare Lucas Pimentel 282.147 230"44
./readline.sh list.txt |sed -n '/230\"44/p'
output: Zilmara de Nazare Lucas Pimentel 282.147 230"44