假设这个简短的shell脚本
#! /bin/sh
read -p "Enter directory: " dir
echo $dir
或python脚本
#!/usr/bin/env python
dir = input("Enter directory: ")
print dir
当我尝试使用环境变量从控制台输入目录时,例如$PROJECT
$PROJECT/src
环境变量未展开,但 TAB 显示为TAB。
有没有办法让控制台的输入可扩展?
答案 0 :(得分:2)
为什么不使用sys.argv
?您可以将环境变量作为参数传递给脚本。例如;假设以下脚本:
#!/usr/bin/env python
import sys
print sys.argv
当我们按以下方式运行时:
python2 example.py $PROJECT_PATH
您会在$PROJECT_PATH
列表中找到sys.argv
作为第二个元素。运行上述命令时,它将完全类似于以下输出:
['example.py', '/path/to/example/project']