关灯
开启左侧

[Windows主机] linux中运行shell程序的方法介绍

[复制链接]
Vecloud 发表于 2022-5-13 14:21:20 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
 
今天小编分享的是关于linux中运行shell程序的方法介绍,可能大家对linux中运行shell程序的方法并不陌生,或者从来没有了解过linux中运行shell程序的方法。但是不用担心,今天小编会以最简单的描述来讲解。一起来看看吧。

首先,我们来看一一个程序test.sh

#!/bin/sh#this is a test.cd /tmpecho "hello,this is a test"执行程序的方法:
1、使文件具有可执行权限,直接运行文件。
chmod命令用来修改文件的权限。
+x是使文件拥有可执行的权限。就如上面我们运行程序一样。

2、直接调用命令解释器执行程序。

由于我们的解释器是/bin/sh,所以,用sh命令解释器来执行程序。
3、使用source执行文件。

程序执行差异说明:
在我们运行shell程序的三种方法中,前两种方法的执行过程如下:
(1)父进程接收到命令,然后发现不是内建命令,于是创建了一个和自己一样的shell进程,来执行这个外部命令
(2)这个shell子进程用/bin/sh取代自己,sh进程设置自己的运行环境变量,其中包括了$PWD变量。
(3)sh进程依次执行内建命令cd和echo。在此过程中,sh进程(子进程)的环境变量被cd命令改变。
(4)子进程执行完毕,就消亡了,一直在等待的父进程醒来,继续接受命令。
所以我们明白了前两种方法执行结果跟我们预期不一样的原因,父进程的当前目录(环境变量)无法被子进程改变。
但是,使用source执行是shell脚本时不会创建子进程,而是在父进程中直接执行。
以上就是linux中运行shell程序的方法的简略介绍,当然详细使用上面的不同还得要大家自己使用过才领会。
 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


0关注

0粉丝

107帖子

热门图文
热门帖子
排行榜
作者专栏

关注我们:微信订阅号

官方微信

APP下载

全国服务热线:

4000-018-018

公司地址:上海市嘉定区银翔路655号B区1068室

运营中心:成都市锦江区东华正街42号广电仕百达国际大厦25楼

邮编:610066 Email:3318850993#qq.com

Copyright   ©2015-2016  站长技术交流论坛|互联网技术交流平台Powered by©Discuz!技术支持:迪恩网络  

鄂公网安备 42018502006730号

  ( 鄂ICP备15006301号-5 )