如果我们在终端中输入类似的内容,会输出什么
/主页/用户/一些带 * 的字符
例如
/home/renga/i*
home/renga/i*
我在脚本中传递了一个像这样的变量 ( ),在运行时,该值与文件名一起传递,而不是与/home/renga/i*
.
答案1
是的,*
称为“通配符”,它主要用作代表一个或多个字符的符号。
考虑你的例子(添加了我的命令):
ls /home/renga/i*
目录/home/renga
是这样的
internal
inspiration
auth
unknown
liar
i*
因此你的命令将给出如下输出:
/home/renga/internal
/home/renga/inspiration
/home/renga/i*
如果要访问i*
目录或文件,则需要\
在命令中添加反斜杠 , ,因此命令类似于这样ls /home/renga/i\*
,输出将列出i*
文件或目录的内容i*
。
您还可以使用引号来避免匹配文件名。所以它会是这样的:
ls /home/renga/"i*"
您可以阅读有关通配符的更多信息这里