shell脚本变量定义注意别跟系统变量重名了……
2015-02-10 11:28
513 查看
写了个很简单的脚本,执行结果却很奇怪。
执行结果:
原因是自己在脚本中定义的PATH变量把系统变量PATH给替代了,脚本原本根据系统变量PATH找命令(rm、ln),现在PATH在脚本中被重新定义成$HOME/vlc_transplant4,脚本优先用这个定义了。
把脚本中的PATH名字改改就可以了。
1 #!/bin/bash 2 3 PATH=$HOME/vlc_transplant4 4 5 rm -f $PATH/vlc 6 ln -s $PATH/bin/vlc-static $PATH/vlc
执行结果:
zlf@ubuntu:~/vlc_transplant4$ ./update.sh ./update.sh: 行 5: rm: 未找到命令 ./update.sh: 行 6: ln: 未找到命令
原因是自己在脚本中定义的PATH变量把系统变量PATH给替代了,脚本原本根据系统变量PATH找命令(rm、ln),现在PATH在脚本中被重新定义成$HOME/vlc_transplant4,脚本优先用这个定义了。
把脚本中的PATH名字改改就可以了。
1 #!/bin/bash 2 3 _PATH=$HOME/vlc_transplant4 4 5 rm -f $_PATH/vlc 6 ln -s $_PATH/bin/vlc-static $_PATH/vlc
相关文章推荐
- linux中shell脚本中系统预先定义的变量
- Linux系统shell脚本判断变量文件目录+l脚本的字符串截取(转)
- Linux系统shell脚本判断变量文件目录:权限、是否存在、空值、相等
- shell脚本的作用,shell脚本变量的定义和三种赋值方式【shell脚本的学习笔记一】
- shell脚本--变量的定义与使用
- 通过进程检测服务时脚本文件名不要起要检测的服务名字命名 shell程序从上到下执行若定义函数或引用系统函数需先定义 kill -USR2
- shell脚本里函数定义和变量使用
- Shell脚本注释及变量定义
- Shell脚本定义变量和环境变量的引用
- 通过shell脚本删除代码里面定义但未使用的变量
- linux脚本明明定义了变量,但是引用的时候报错(原因:shell定义变量的时候,“等号”两边不要加空格)
- 在Shell脚本中编写AWK脚本实现数据提取—注意格式、awk中使用shell变量、awk中数字字符串转换成数字、awk中字符串相等比较
- Shell脚本定义变量和重新赋值
- 脚本乐园 shell 自定义函数(定义、返回值、变量作用域)介绍
- 在centos系统shell脚本中cat和重定向符号<<EOF结合使用的注意事项
- Linux系统shell脚本判断变量文件目录:权限、是否存在、空值、相等
- shell的相关知识(变量、脚本定义)
- Shell脚本定义变量和重新赋值
- 【Shell脚本学习6】Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
- shell脚本之定义变量