
用户登录时,将会取得一个 bash ,这个 bash 在系统中有一个全局唯一的ID,也就是进程的ID,使用命令 ps -ef 并配合 grep 来查看进程ID。 ps -ef|grep bash ,此命令还能查看进程对应的父进程ID,系统中所有进程的祖先进程都是INIT进程(进程ID=1),它是最先启动运行的。
回到 bash 进程,也就是我们的命令行界面,进程的执行都有其附属的执行环境,环境变量就属于其中之一。并且环境变量是可以完全被子进程继承的,也就是说,子进程可以使用父进程的环境变量,但是不能使用父进程的自定义变量。
简而言之: 子进程继承父进程的环境变量,不继承父进程的自定义变量。
shell脚本有4种执行方式,不同的执行方式可能导致结果不一致
四种方式的执行结果如下:
Linux下可以有两种方式执行Shell脚本:1、用shell程序执行脚本:根据shell脚本的类型,选择shell程序,常用的有sh,bash,tcsh等(一般来说第一行#!/bin/bash里面指明了shell类型的,比如#!/bin/bash指明是bash,#!/bin/sh则是sh);然后输入命令(其中bash为shell的名称,myshell.sh则为要执行的代码):
bash myshell.sh
2、直接执行脚本:
不过首先的加上可执行权限(也许要root权限,4情况而定),执行:
chmod +x myshell.sh
然后执行:
./myshell.sh
就可以执行了。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)