shell问题汇总
发布时间:2020-12-15 18:21:30 所属栏目:安全 来源:网络整理
导读:1.?sudo执行脚本找不到变量 当普通用户下,设置并export一个变量,然后利用sudo执行echo命令,能得到变量的值,但是如果把echo命令写入脚本,然后再sudo执行脚本,就找不到变量,未能获取到值,如题情况如下: $ cat demo. sh echo $var1 $ var1 = a1$ expor
1.?sudo执行脚本找不到变量 当普通用户下,设置并export一个变量,然后利用sudo执行echo命令,能得到变量的值,但是如果把echo命令写入脚本,然后再sudo执行脚本,就找不到变量,未能获取到值,如题情况如下: $ cat demo.sh echo $var1 $ var1=a1 $ export var1 # export 变量 $ sudo echo $var1 # sudo执行echo命令,返回变量值 >>>a1 $ sudo bash demo.sh # sudo执行脚本,不能获取变量值 $ bash demo.sh # 普通用户执行脚本,返回变量值 >>>a1 ?
具体原因还有其他解决方案见http://blog.sina.com.cn/s/blog_4da051a60102uyvg.html ? 2. 替换变量中的字符 $ BRANCH_NAME=feature/ss_tracking $ echo $BRANCH_NAME >>>feature/ss_tracking $ echo ${BRANCH_NAME///-} >>>feature-ss_tracking ? 3. sed遍历替换 #linux find features -type f |while read file;do sed -i ‘s/context.feature.mongo/context.mongo/g‘ $file;done #mac find features -type f |while read file;do sed -i "" ‘s/context.feature.mongo/context.mongo/g‘ $file;done (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Bash:if [“echo test”==“test”];然后回声“回声测试输
- [angularjs] angularjs系列笔记(四)过滤器
- 解决angular的$http.post()提交数据时后台接收不到参数值问
- linux bash脚本监控启动停止weblogic服务的脚本写法
- 使用CXF简单开发webservice的实例
- webservice在远程不能被调用解决方案
- 陈越《数据结构》第七讲 图(中)
- Scala REPL和Clojure REPL之间的区别 – 编译速度
- angularjs – 在Angular中触摸与Google地图不兼容的事件
- 如何从Angular 2中的指令追加动态DOM元素?