如何解决尝试使用用户输入、环境变量、文件系统操作、条件、下载、取消归档编写脚本
我正在尝试根据以下场景编写脚本:
-
将文件
Advanced - Linux Shell Scripting – Env.tgz
放入任何网络资源 -
编写执行以下操作的脚本:
但我被困在“让用户选择环境名称。如果用户不选择,请选择默认的“FeatureBranch”环境。”
这是我现在的代码:
#!/bin/bash
curl -O ftp://ftp/AdvancedLinuxShellScriptingEnv.tar.gz --user vsftp:aq12w34e
tar -xzvf AdvancedLinuxShellScriptingEnv.tar.gz -C /tmp/
tar -xvf /tmp/*.tar -C /tmp/
rm -rf /tmp/*.tar | rm -rf ~/*.gz
#Asking user to choose an environment name
echo "Enter Environment Name:"
envname=${FeatureBranch:-DEFAULTVALUE}
read envname
valid='0-9a-zA-Z $%&#'
if [[ ( $envname =~ [^$valid] ) ]];
then
export $envname=/tmp/AdvancedLinuxShellScriptingEnv/
fi
解决方法
我已经用这段代码解决了我的问题:
echo "Enter Environment Name (FeatureBranch is default): "
read -rp"[FeatureBranch/Other]: " -e -i FeatureBranch USER_INPUT
if [[ $USER_INPUT == "FeatureBranch" ]]; then
export FeatureBranch='/tmp/AdvancedLinuxShellScriptingEnv/'
else
export $USER_INPUT='/tmp/AdvancedLinuxShellScriptingEnv/'
fi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。