我写了一个适用于我的机器的bash脚本,但我想与同事分享。在这样做时,我希望他能够仅改变适合他的系统的变量中的路径。我假设我应该添加一部分脚本来检查现有目录,如果它们不存在则创建它们?
还有一种方法让我使用"〜/"将路径指向他的主目录?
基本上尝试使这个脚本的切换尽可能简单,本地用户只会更改变量中的路径。
谢谢!
附件是我的剧本片段 - 我希望" me"反映当地用户。
dbreportspath="/Users/me/Dropbox/NDT_RED_REPORTS/"$survivor"/" #Path to Local dropbox Silverstack Reports - Make sure the directory exists!
dbpath="/Users/me/Dropbox/Drive_Contents/" #Path to Local dropbox Drive Contents - Make sure the directory exists!
localdc="/Users/me/Documents/Drive_Contents/Jobs/"$survivor/"" #Path to Local directory for Drive Contents
答案 0 :(得分:2)
我会将您的脚本更改为
dbreportspath="$HOME/Dropbox/NDT_RED_REPORTS/$survivor/"
dbpath="$HOME/Dropbox/Drive_Contents/"
localdc="$HOME/Documents/Drive_Contents/Jobs/$survivor/"
(请注意,我已删除$survivor
周围的引号。除非您能详细说明,否则我不确定他们的需要吗?)
要回答有关创建目录的问题的其他部分(如果它们不存在):
if [ ! -d "$dbreportspath" ]; then
mkdir -p "$dbreportspath"
fi
或者如果你需要多次这样做:
function createDirsIfDoNotExist() {
for dir in "$@"; do
if [ ! -d "$dir" ]; then
mkdir -p "$dir"
fi
done
}
createDirsIfDoNotExist "$dbreportspath" "$dbpath" "$localdc"