Linux 如何在bash中获取tsv文件中的第二列和最后一列内容?
我应该用什么来代替-3呢?或者有什么办法吗?我会把整条线分割成不同的变量,这会让你达到你想要的目的。给定此输入文件:Linux 如何在bash中获取tsv文件中的第二列和最后一列内容?,linux,bash,cut,Linux,Bash,Cut,我应该用什么来代替-3呢?或者有什么办法吗?我会把整条线分割成不同的变量,这会让你达到你想要的目的。给定此输入文件: #!/usr/bin/env bash while read -r line; do echo "$line" | cut -d ' ' -f1-3 done 您可以像下面这样处理您的列。你可以捕获它们,但你不必对它们做任何事情;注意,col1和3在脚本中是junk1和junk3: $ cat inputFile.txt ya1 ya2 ya3 ya4
#!/usr/bin/env bash
while read -r line; do
echo "$line" | cut -d ' ' -f1-3
done
您可以像下面这样处理您的列。你可以捕获它们,但你不必对它们做任何事情;注意,col1和3在脚本中是junk1和junk3:
$ cat inputFile.txt
ya1 ya2 ya3 ya4
ye1 ye2 ye3 ye4
yi1 yi2 yi3 yi4
yo1 yo2 yo3 yo4
yu1 yu2 yu3 yu4
tsv文件中只有第二列和最后一列内容
REF:
awk-F$'\t'{print$2,$NF}'file.tsv
我找到了另一种方法,我只是用bash中的'cut'命令:cut-f2-
#!/usr/bin/env bash
# initialize the file
cat /dev/null > file.tsv
# process second and last column
while IFS=$'\t' read -r junk1 var2 junk3 var4; do
echo "$var2,$var4" >> file.tsv
done < inputFile.txt
# Display TSV file
cat file.tsv
$ cat file.tsv
ya2,ya4
ye2,ye4
yi2,yi4
yo2,yo4
yu2,yu4