第一行和第四行的目的是什么?
grep "*" /tmp/dirip.$$
if [ $? -eq 1 ] #grep command returns 1 if no output found
then
mfile=$mfile/*
fi
答案 0 :(得分:0)
*在引号之间,因此shell不会将其视为特殊 字符并对其进行文件全局扩展。因为grep没有被告知 要使用扩展正则表达式,它默认(如果它符合POSIX)到基本 正则表达式(BRE)。在BRE中,a *并不特殊 它是正则表达式的第一个字符,就像它在这里一样。 因此模式只查找包含*字符的行。 然后第一行的效果是写入stdout每一行 在/tmp/dirip.$$中有一个*。第一行的目的 更难以辨别。