如何使用 IFS 设置变量

如何使用 IFS 设置变量

我有一个文件,input.txt具有以下值:

field1|value1
field2|value2
field3|d:\foldername
field4|null

我如何将变量设置为column1并且column2以便我可以评估column2其为空并显示错误消息?

我可以使用 DOS 相当轻松地完成此操作,但我不知道如何在 bash 中完成此操作。我研究了一段时间,知道 IFS 是一个不错的选择,但我不知道如何在 中实现它bash

答案1

如果您使用IFSread -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

相关内容