功能说明:用root用户执行一个脚本,脚本里需要切换到普通用户DT去执行其他命令,其中就用到了EOF,用法如下: #!/bin/bash su - DT<<EOF cd apache-tomcat-7.0.54/bin sh startup.sh EOF 当时以为su - DT就跟在交换界面执行一样会把环境也切换过去,所以在分界符EOF里用的是相对路径,结果一运行就报错: -bash: line 8: cd: apache-tomcat-7.0.54/bin: 没有那个文件或目录 然后就做了个
关于shell for循环具体详细说明可参考:http://wiki.jikexueyuan.com/project/linux-command/chap34.html example: 分别在community develop lenovo zte这4个目录下创建x86_64.i386两个子目录 for dir in community develop lenovo zte; do mkdir $dir/x86_64, mkdir $dir/i386; done
参考:https://blog.csdn.net/hanjiezz/article/details/79571703 shell脚本为了防止同时执行相同的脚本需要设置互斥锁 简单方法,脚本执行开始生成一个锁文件,如果该锁文件存在则代表有人在执行,就退出脚本 test.sh #!/bin/bash LOCKFILE="/tmp/test_lock" if [ -f ${LOCKFILE} ] then echo "someon do the same thing" e