Vic*_*c23 3 bash shell ascii utf-8
我想将以下命令行写入shell脚本:
cat text.tsv |
grep -Pvi '.\t.\t.*\bHotels|?????????|??????|?????|?????|???|????|????|????|??????|??|??|??|??|??|??|??\b' |
awk '{print $0,"\t","column1"} > Text2.tsv
Run Code Online (Sandbox Code Playgroud)
但是当我把它放到.sh文件中时,所有非ascii字符都会被忽略:
cat text.tsv |
grep -Pvi '.\t.\t.*\bHotels|?????????|??????|?????|?????|???|????|????|????|??????|??|??|??|??|??|??|??\b' |
awk '{print $0,"\t","True"} > Text2.tsv
Run Code Online (Sandbox Code Playgroud)
如何将.sh文件设置为UTF-8?我试过了:
iconv -c -f ASCII -t UTF-8 Test.sh > Test2.sh
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.
jer*_*emf 10
Bash会处理您的区域设置.
检查一下 locale
如果不是UTF-8,你会这样:
export LANG=C.UTF-8
Run Code Online (Sandbox Code Playgroud)