Linux ,csh ls怎么模糊查询变量?

你好, 我是要模糊查询变量, 需求是这样的,
set name = abc
ls -trd 星号$name星号 (星号自动屏蔽掉了,就用汉字表示了)

但是在执行 csh的时候, 提示ls: No match. , 但直接在putty 里面敲 ls -trd 星号abc星号 是能出来需要查找的内容的, 换成模糊查找变量就出不来想要的结果 。这是为什么? 模糊查询变量怎么写?

在 csh 脚本中,使用变量时必须使用美元符号($)和花括号({})来表示变量。因此如果要在 csh 脚本中使用模糊查询变量,就应该将其写成如下格式:

ls -trd "${name}"

注意在 csh 脚本中,字符串必须使用双引号("")括起来,所以上述命令中的字符串也应该使用双引号括起来。

如果在 csh 脚本中使用了单引号('')而不是双引号,就变量将不会被替换。假如使用了如下命令:

ls -trd '${name}'

csh 脚本将会可以试试查找名称为 ${name} 的文件,而不是使用变量 $name 的值进行模糊查找。

另外如果在执行 csh 脚本时遇到了 "ls: No match." 的错误消息,就可能是在脚本中使用的文件名模式与实际文件名不匹配。检查文件名模式是否正确,或者确保文件已经存在。
望采纳。