0 bash
你能帮我理解为什么会发生这种情况吗:
$ echo [023456789]
[023456789]
$ echo [0123456789]
1
Run Code Online (Sandbox Code Playgroud)
根据您的反馈,我希望我能弄清楚如何编写一个 bash 脚本,该脚本可以接受值为 [0123456789] 的参数并将该文字字符串分配给一个变量。
您在当前目录中有一个名为“1”的文件。
echo [0123456789]
Run Code Online (Sandbox Code Playgroud)
是一个通配符命令,它告诉 bash 显示当前目录中名称由单个数字组成的任何文件的名称。如果不存在这样的文件,echo 将显示通配符规范本身。
注意:
$ mkdir /tmp/new-directory
$ cd /tmp/new-directory
$ echo [0123456789]
[0123456789]
$ touch 1 2 4 8
$ echo [0123456789]
1 2 4 8
Run Code Online (Sandbox Code Playgroud)
如果要按字面显示该字符串,而不是显示它匹配的文件名,请将字符串括在引号中:
$ echo "[0123456789]"
[0123456789]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
48 次 |
最近记录: |