我正在编写一个脚本来搜索文件中的模式。例如
脚本名模式 file1 file2 filenN
我使用 for 循环遍历参数 argv,如果提供了所有参数,它就可以完成这项工作。但是,如果只提供一个参数(在这种情况下为 pattern ),它应该要求输入文件名或名称,然后检查模式。我如何设置变量以包含从命令行输入的多个单词,以便我可以在循环中使用它。或者甚至更好的是可以将命令行输入分配给 argv,所以我不必使用相同的循环两次,因为它是不同的变量名(一个循环通过 argv,如果超过 on 参数,第二个循环通过如果仅提供一个参数,则为文件名变量)。以下是我的脚本中导致问题的部分:
set pattern = $1
if ($#argv == 1) then
echo "Enter name of files"
set filenames = $< #how I can set it to accept more than word?
endif