Bash通过变量获取文件夹

时间:2013-05-07 00:57:31

标签: bash

我正在尝试编写脚本,我希望ls一个目录。该路径写在一个单独的文件中,我使用source导入该文件。当我用

执行时
#!/bin/bash

source Settings
echo $PathToLaunchers
echo "Availible launchers"
ls -f --color \$PathToLaunchers

在我的设置文件中:     PathToLaunchers="~/Games/Minecraft/Launchers"

它说

ls: cannot access $Path: No such file or directory

它应该ls该值所在的目录。如何将ls变量给出的目录?

1 个答案:

答案 0 :(得分:3)

摆脱\前面的$PathToLanuchers

它正在逃避导致bash不扩展变量的$

命令应为

ls -f --color $PathToLaunchers

您还需要删除~/Games/Minecraft/Launchers左右的引号。这告诉bash您想要文字代字号或者如果您希望主目录用$ HOME替换它

PathToLaunchers=~/Games/Minecraft/Launchers

PathToLaunchers="$HOME/Games/Minecraft/Launchers"