我正在尝试将json文件导入mongo。当我使用此行导入文件时,它可以工作:
mongoimport -d reps_development -c users --jsonArray --file ~/reps/scripts/mockUserData.json
该脚本使用环境变量$ REPS_ROOT,该变量在我的.bash_profile中设置。这一行失败了:
mongoimport -d reps_development -c users --jsonArray --file $REPS_ROOT/scripts/mockUserData.json
我使用以下命令设置$ REPS_ROOT:
export REPS_ROOT="~/reps"
有关为什么这不起作用的任何想法?我得到的错误是:
file doesn't exist: ~/reps/scripts/mockUserData.json
答案 0 :(得分:0)
Bash将$REPS_ROOT
扩展为~/reps
,这将成为价值。 Bash不会再次扩展该值。如果该变量的值包含相对路径,则需要确保它已展开。例如:
mongoimport -d reps_development -c users --jsonArray --file $(cd $REPS_ROOT; pwd)/scripts/mockUserData.json
如果您使用的是Linux,则可以使用$(readlink -f $REPS_ROOT)
代替。或者,您可以使用$HOME
代替~
:
export REPS_ROOT="$HOME/reps"