学习啦 > 学习电脑 > 操作系统 > Linux教程 >

执行Shell脚本有几种方法

时间: 加城1195 分享

  Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响这篇文章主要介绍了执行Shell脚本的4种方法及区别介绍,本文讲解了相对路径方式、绝对路径方式、bash命令调用、相对或绝对方式以及说下几种方式的区别,需要的朋友可以参考下

  执行shell脚本有以下几种方式

  1、相对路径方式,需先cd到脚本路径下

  复制代码 代码如下:

  [root@banking tmp]# cd /tmp

  [root@banking tmp]# ./ceshi.sh

  脚本执行成功

  2、绝对路径方式

  复制代码 代码如下:

  [root@banking tmp]# /tmp/ceshi.sh

  脚本执行成功

  3、bash命令调用

  复制代码 代码如下:

  [root@banking /]# bash /tmp/ceshi.sh

  脚本执行成功

  4、. (空格) 相对或绝对方式

  复制代码 代码如下:

  [root@banking /]# . /tmp/ceshi.sh

  说下几种方式的区别

  第一种和第二种没有什么区别,两种方式都需要提前赋予脚本以执行权限。

  第三种是把脚本当做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.sh

  v_ceshi='father'

  #-------父shell中定义变量

  echo "以子shell方式调用脚本"

  /tmp/subshell.sh

  echo "输出v_ceshi值为${v_ceshi}"

  echo ""

  echo "在当前shell中执行脚本"

  . /tmp/subshell.sh

  echo "输出v_ceshi值为${v_ceshi}"

  [root@banking /]#

  [root@banking /]# cat /tmp/subshell.sh

  v_ceshi=son

  [root@banking /]#

  执行结果为

  复制代码 代码如下:

  [root@banking /]# /tmp/father.sh

  以子shell方式调用脚本

  输出v_ceshi值为father

  在当前shell中执行脚本

  输出v_ceshi值为son

  补充:Linux基本命令

  1.ls命令:

  格式::ls [选项] [目录或文件]

  功能:对于目录,列出该目录下的所有子目录与文件;对于文件,列出文件名以及其他信息。

  常用选项:

  -a :列出目录下的所有文件,包括以 . 开头的隐含文件。

  -d :将目录像文件一样显示,而不是显示其他文件。

  -i :输出文件的i节点的索引信息。

  -k :以k字节的形式表示文件的大小。

  -l :列出文件的详细信息。

  -n :用数字的UID,GID代替名称。

  -F : 在每个文件名后面附上一个字符以说明该文件的类型,“*”表示可执行的普通文 件;“/”表示目录;“@”表示符号链接;“l”表示FIFOS;“=”表示套接字。

  2.cd命令

  格式:cd [目录名称]

  常用选项:

  cd .. 返回上一级目录。

  cd ../.. 将当前目录向上移动两级。

  cd - 返回最近访问目录。

  3.pwd命令

  格式: pwd

  功能:显示出当前工作目录的绝对路径。

  相关阅读:Linux主要特性

  完全兼容POSIX1.0标准

  这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。

  多用户、多任务

  Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。

  良好的界面

  Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。

  支持多种平台

  Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel 64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。


执行Shell脚本相关文章:

1.linux shell脚本执行命令

2.Linux中执行shell脚本的方法

3.shell脚本的执行方法

4.Linux系统怎么用VI命令

5.如何在Windows下运行linux shell脚本

4019729