Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何在bash中获取tsv文件中的第二列和最后一列内容?_Linux_Bash_Cut - Fatal编程技术网

Linux 如何在bash中获取tsv文件中的第二列和最后一列内容?

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

我应该用什么来代替-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
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