根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。 1,源命令用法: 源FileName功能: 在当前bash环境中读取并执行FileName中的命令. 文件名文件不能具有“执行权限”. 注意: 此命令通常替换为命令“”. 如: 源bash_profile. bash_profile是等效的. source(或点)命令通常用于重新执行新修改的初始化文档. 源命令(来自C Shell)是bash shell的内置命令. dot命令是一个点符号(来自Bourne Shell). 只需依次执行文件中的命令即可. 2. sh和bash命令的用法: sh FileName bash FileName功能: 在当前对应的bash环境中创建一个新的子Shell,以读取并执行FileName中的命令. 文件名文件不能具有“执行权限”. 注意: 执行文件时linux循环执行脚本,两者之间的区别是使用自己的shell运行该文件. sh使用“ -n”选项检查shell脚本的语法,并使用“ -x”选项逐条语句跟踪shell脚本语句,并且可以使用shell的内置变量来增强输出信息-x选项. 3. ./: ./FileName的命令用法功能: 打开一个子外壳,以读取并执行FileName中的命令. 该文件必须具有可执行权限. 注意: 运行Shell脚本时,将启动另一个命令解释器. 每个Shell脚本都有效地在父Shell的子进程中运行. 父外壳程序是指控制终端或xterm窗口. 该过程为您提供命令指示符. Shell脚本也可以启动自己的子进程. 这些子外壳程序(即子进程)允许脚本有效地并行运行脚本中的多个子任务. 脚本中的变量设置在父进程中无效. 脚本中的导出仅影响脚本及其下标的位置变量参数. 将参数传递到脚本时,可以使用此位置变量来获取参数. 它们是: $ 0: 脚本名称. 此变量包含地址,您可以使用基本名称$ 0获取脚本名称. $ 1: 第一个参数$ 2,$ 3,$ 4linux循环执行脚本,$ 5,...特定的变量参数一些与脚本运行有关的控制信息$#传递给脚本的参数数量$ *以单个字符串显示传递给脚本的所有参数$$脚本运行的ID号$!在后台运行的最后一个进程的ID数字$ @与$#相同,但是使用引号并以引号返回每个参数. $-显示shell使用的当前选项. $?显示最后一个命令的状态. 0表示没有错误. 源文件名,sh文件名和./filename脚本执行之间有什么区别? 1.当Shell脚本具有可执行权限时,使用sh filename和./filename执行脚本之间没有区别. ./filename是因为当前目录不在PATH中,所以全为“. ”. 用于指示当前目录. 2.sh filename重新创建一个子shell,在该子shell中的脚本中执行语句,该子shell继承了父shell的环境变量,但是新创建和更改的子shell变量不会被带回到父shell除非使用出口. 3.源文件名: 此命令仅读取脚本中的语句并依次在当前shell中执行它们,而无需创建新的子shell. 然后,脚本中所有新的和更改的变量将保存在当前shell中. 例如: 1.创建一个新的带有以下内容的test.sh脚本: A = 1 2.然后使其成为可执行文件chmod + x test.sh 3.运行sh test.sh后,回显$ A显示为空,因为A = 1不返回到当前外壳4.运行./test.sh后,具有相同的效果5.运行源test.sh或.test.sh,然后回显$ A,它将显示1,指示A = 1的变量在当前外壳中
|
温馨提示:喜欢本站的话,请收藏一下本站!