小编Vic*_*c23的帖子

将shell脚本设置为utf8

我想将以下命令行写入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)

但这似乎不起作用.

bash shell ascii utf-8

3
推荐指数
1
解决办法
2万
查看次数

多个变量的列总和

使用Shell脚本(Bash),我试图对列表中所有不同变量的列求和.假设我有一个Test.tsv文件的以下输入

           Win  Lost
Anna        1   1 
Charlotte   3   1
Lauren      5   5
Lauren      6   3
Charlotte   3   2
Charlotte   4   5
Charlotte   2   5
Anna        6   4
Charlotte   2   3
Lauren      3   6
Anna        1   2
Anna        6   2
Lauren      2   1
Lauren      5   5
Lauren      6   6
Charlotte   1   3
Anna        1   4
Run Code Online (Sandbox Code Playgroud)

我想总结一下每个参与者赢了多少钱.所以我想得到这个结果:

          Sum Win    Sum Lost
Anna        57         58
Charlotte   56         57
Lauren      53         56
Run Code Online (Sandbox Code Playgroud)

我通常会做的是每人和每列的总和,并一遍又一遍地重复这个过程.请参阅下文,我将如何为上述示例执行此操作:

cat Test.tsv | grep -Pi '\bAnna\b' | cut -f2 -d$'\t' |paste …
Run Code Online (Sandbox Code Playgroud)

bash shell sum multiple-columns

2
推荐指数
1
解决办法
259
查看次数

标签 统计

bash ×2

shell ×2

ascii ×1

multiple-columns ×1

sum ×1

utf-8 ×1