【问题标题】:When shell scripts echos "*", why it lists the files and directories?当shell脚本回显“*”时,为什么它会列出文件和目录?
【发布时间】:2011-11-09 10:06:01
【问题描述】:

我编写了以下shell脚本来在屏幕上打印“*”,但是当我执行脚本时,它会列出脚本所在当前目录中的所有文件和目录。谁能告诉我为什么脚本会列出当前目录中的所有文件和目录?

#!/bin/bash
TEST="*";
echo $TEST

【问题讨论】:

    标签: linux shell


    【解决方案1】:

    因为$TEST周围缺少一些""

    试试echo "$TEST"

    【讨论】:

      【解决方案2】:

      它会打印所有文件和文件夹,因为外壳程序(在您的情况下为 bash)会在将 * 传递给命令之前对其进行扩展。

      解决方法很简单:

      #!/bin/bash
      TEST="*";
      echo "$TEST"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-11-26
        • 1970-01-01
        • 2012-04-11
        • 2014-04-23
        • 2013-10-06
        • 2014-11-01
        • 2016-08-01
        • 1970-01-01
        相关资源
        最近更新 更多