我是bash的初学者。我有一个.csv文件。它包含2列(名称和数字)。这是列的内容:
Name, Num
ex1, 10.20.30.40
ex2, 20.30.40.30
ex3, 10.45.60.20
ex4, 10.20.30.40
我想选择其第二列等于$ Number的行(例如“ 10.20.30.40”)。我使用此脚本:
awk -F, '$2 == $Number' name.csv >output.txt
但是执行代码后,“ output.txt”为空。当我回显找到的值时,它也不显示任何内容。怎么了?
我还想访问存储在该行第一列中的值。我应该怎么做?
简单的grep
可以满足您的需要-以下将匹配字符串的整行输出到output.txt
文件中:
grep "$Number" name.csv > output.txt
尝试一下
Number='^.\{3\}, 10.20.30.40$'
grep "$Number" yourfile.csv > output.txt