shell编程规范与变量详解
linux如何从shell中读地址变量?
linux如何从shell中读地址变量?
c$PWD $PWD表示当前路径,将$PWD赋值给c变量c即为当前路径的值
shell中的字符怎样转换成数字?
1、数字类型转字符类型数字类型转字符类型,是比较常见的,也是必须容易实现的。大多时候系统能够自动进行转换,如:aa$((1 1))echo $aa变量aa赋值为整数2,但echo 输出时已被当成字符型。当然也可以强制进行转换,如:echo $aa
简述shell脚本五种执行方式?
Linux中执行shell脚本五种方式
方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:
方法二:以绝对路径的方式去执行bash shell
方法三:直接使用bash 或sh 来执行bash shell脚本
方法四:在当前的shell环境中执行bash shell脚本
方法五:在shell中启动另外的shell
在运行shell脚本时候,有三种方式来调用外部的脚本,exec(exec )、source(source )、fork()
1、exec(exec ):
使用exec来调用脚本,被执行的脚本会继承当前shell的环境变量。但事实上exec产生了新的进程,他会把主shell的进程资源占用并替换脚本内容,继承了原主shell的PID号,即原主shell剩下的内容不会执行。
2、source(source )
使用source或者“.”来调用外部脚本,不会产生新的进程,继承当前shell环境变量,而且被调用的脚本运行结束后,它拥有的环境变量和声明变量会被当前shell保留,类似将调用脚本的内容复制过来直接执行。执行完毕后原主shell继续运行。
3、fork()
直接运行脚本,会以当前shell为父进程,产生新的进程,并且继承主脚本的环境变量和声明变量。执行完毕后,主脚本不会保留其环境变量和声明变量。
如何运行shell脚本?
一般shell默认解释器为bin/bash,查看默认解释器为echo $SHELL,脚本开头我们要指定解释器有以下三种方式运行
1./bin/bash /path/script-name 【指定解释器】--建议使用
2./path/script-name 或 ./script-name 【有执行权限】
script-name 或 . script-name 【点号后面有空格】
[来看我][耶]