Unix sh脚本混乱

忍者Z

我有一个剧本,是我大学的一位教授给我们修改的,但是我似乎无法确切地知道它的作用。谁能帮助我更好地理解它?

for i 
do grep look $i; done

从我可以收集到的信息中可以看出,变量i的值可以是文件或目录。但是我不熟悉look命令如何起作用。我将不胜感激您可以提供的任何提示。

杰夫·鲍曼

look不是命令,而是的第一个参数grep因此它将look在名为的文件中搜索单词$igrep除非你在传递不会搜索文件夹-Rgrep -R look $i)。

的混淆的一点是,for i通常有一个in WORDS指定的,因此for i in one two three将运行之间的命令dodone三次:一次具有可变i=“一个”,一旦与i=“2”,并与一次i=“三”。但是,bash手册说明了如果in未指定该怎么办

如果不存在“ in words”,则for命令对于设置的每个位置参数仅执行一次命令,就好像已指定“ in $ @”中一样[...]。

因此,简而言之,如果脚本位于名为的文件中foo.sh,则调用foo.sh file1 file2look在文件“ file1”和“ file2”中查找单词

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章