将文件中的列读取到单独的变量中

将文件中的列读取到单独的变量中

我需要将以下输入作为变量读取到单独的列中?输入.txt

b73_chr10   w22_chr9
w22_chr7    w22_chr10
w22_chr8    w22_chr6

我写了以下命令;但我猜它不正确。

value1=$(echo $line| awk -F\ '{print $1}' input.txt)
value2=$(echo $line| awk -F\ '{print $2}' input.txt)

答案1

您可以使用read内置的 shell:

while IFS=" " read -r value1 value2 remainder
do
    ...
done < "input.txt"

额外字段(如果有)将出现在“余数”中。 shell 的默认值IFS(字段间分隔符)由空白字符组成,将用于将每一行分割为其组成字段。

相关内容