我想读取文件中的所有行,然后检查所有行是否具有相同的字符串值。我想在这种情况发生之前进行循环。怎么办我用bash写的?
我正在检查条件并在文件中写入“是”或“否”字。 我想循环这个,直到所有行在测试中都有单词。 (使用awk命令生成测试文件)。 测试文件输出最初看起来像 没有 没有 无
运行脚本,直到'测试'文件将内容更改为 是 是 是
如何编写循环并将条件置于bash中?
答案 0 :(得分:1)
# loop repeatedly until file matches
until grep -qv yes file; do
sleep 1 # todo: wait until file changes
done
# file matched
说明:
grep -q
搜索而不打印任何内容。grep -q yes
,则yes
成功。grep -vq yes
,则yes
成功。until grep -vq yes
,yes
就会循环播放。换句话说,它会循环,直到所有行都为yes
。