shell 运行
来源:互联网 发布:mac恢复垃圾箱删除文件 编辑:程序博客网 时间:2024/05/17 23:06
执行shell脚本有以下几种方式
1、相对路径方式,需先cd到脚本路径下
[root@MiWiFi-R3-srv prophet]# lsrpmbuild test.sh vimrc.zip 公共 模板 视频 图片 文档 下载 音乐 桌面[root@MiWiFi-R3-srv prophet]# ./test.shbash: ./test.sh: 权限不够[root@MiWiFi-R3-srv prophet]# chmod +x test.sh[root@MiWiFi-R3-srv prophet]# ./test.sh
脚本执行成功
2、绝对路径方式
[root@MiWiFi-R3-srv prophet]# /home/prophet/test.shHello World
脚本执行成功
3、bash命令调用
[root@MiWiFi-R3-srv prophet]# bash ./test.shHello World
脚本执行成功
4、. (空格) 相对或绝对方式
[root@MiWiFi-R3-srv prophet]# . ./test.shHello World
说下几种方式的区别
第一种和第二种没有什么区别,两种方式都需要提前赋予脚本以执行权限。
第三种是把脚本当做bash的调用来处理,所以,脚本不需要有执行权限就可以执行。
前三种方式都是在当前shell中打开一个子shell来执行脚本内容,当脚本内容结束,则子shell关闭,回到父shell中。
第四种是使脚本内容在当前shell里执行,而不是单独开子shell执行。
开子shell与不开子shell的区别就在于,环境变量的继承关系,如在子shell中设置的当前变量,不做特殊通道处理的话,父shell是不可见的。
而在当前shell中执行的话,则所有设置的环境变量都是直接生效可用的。
验证:
[root@banking /]# cat /tmp/ceshi.sh
top
1、前三种执行方式下的pstree显示
复制代码 代码如下:
├─sshd─┬─sshd───bash───bash───top
│ └─sshd───bash───pstree
2、第四种执行方式下的pstree显示
复制代码 代码如下:
├─sshd─┬─sshd───bash───top
│ └─sshd───bash───pstree
3、验证环境变量设置的继承关系及可见关系
建立两个脚本,father.sh和subshell.sh。其中father.sh调用subshell.sh
[root@banking /]# cat /tmp/father.shv_ceshi='father'#-------父shell中定义变量echo "以子shell方式调用脚本"/tmp/subshell.shecho "输出v_ceshi值为${v_ceshi}"echo ""echo "在当前shell中执行脚本". /tmp/subshell.shecho "输出v_ceshi值为${v_ceshi}"[root@banking /]#[root@banking /]# cat /tmp/subshell.shv_ceshi=son[root@banking /]#
执行结果为
[root@banking /]# /tmp/father.sh以子shell方式调用脚本输出v_ceshi值为father在当前shell中执行脚本输出v_ceshi值为son
阅读全文
0 0
- shell 运行
- shell运行输出运行记录
- Java运行shell脚本
- 防止shell重复运行
- exec运行shell语句
- 运行jar的shell
- 运行shell脚本
- emacs运行shell命令
- Python运行Shell命令
- android中运行shell
- VIM中运行shell
- Shell脚本的运行
- shell,运行程序计时
- adb shell 运行activity
- shell脚本后台运行
- shell的运行环境
- shell运行FAQ
- Shell后台运行
- struts2重点、精华、用法总结(二):接受请求参数及页面跳转类型
- 排序算法二——选择排序
- 良好的用户体验都有哪些特点?
- hdu6078 wave sequence dp
- Linux Git Github 连接
- shell 运行
- Hexo搭建独立博客并托管到Github和Coding上
- 【拓扑排序】基础
- RYU的REST API 获取拓扑发现结果
- 啥是广点通
- poj2342(summerIv) 树状DP水题
- 一起来点React Native——常用组件之Text
- Python解析lmdb格式mnist数据集
- Poj 1847 Tram ( 最短路变形