![如何使用 IFS 设置变量](https://linux22.com/image/1528863/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20IFS%20%E8%AE%BE%E7%BD%AE%E5%8F%98%E9%87%8F.png)
我有一个文件,input.txt
具有以下值:
field1|value1
field2|value2
field3|d:\foldername
field4|null
我如何将变量设置为column1
并且column2
以便我可以评估column2
其为空并显示错误消息?
我可以使用 DOS 相当轻松地完成此操作,但我不知道如何在 bash 中完成此操作。我研究了一段时间,知道 IFS 是一个不错的选择,但我不知道如何在 中实现它bash
。
答案1
如果您使用IFS
,read -r
您可以根据需要将行分成字段,然后处理这些字段。
#!/usr/bin/env bash
while IFS='|' read -r column1 column2; do
if [ "$column2" == null ] ; then
echo Found null: "$column1|$column2"
fi
done < input.txt