shell脚本编程笔记(一)

1.在位于头部的用以供shell明白应当以何种方式启动的该脚本的命令行中。可以提供额外参数。

#!/bin/bash -l
#在第一行尾加入—l,这样命令行shell会启用一个新的bash进程来执行程序的每一行。并且-l参数使得bash进程的反应和登录shell相似。

echo "echo.sh"
pwd

2.以#!/bin/more 开头的脚本会自动列出脚本内部的内容

3.创建子shell执行命令后返回的是外部命令(find,grep,echo.sh等等)

4.使用 ./FILeName.sh方式执行脚本和使用source FILeName.sh执行脚本。这两种执行方式当同样有改变当前路径环境变量时,前者运行结束并不会改变所在路径的环境变量,而后者会的原因——就是第三点。执行脚本文件是外部命令,所以实际上脚本内部改变路径环境变量是发生在子shell中的,所以对父shell没有影响。   而后者——source命令的作用就是在当前shell环境下读取并执行FILeName中的命令。由于不创建子shell所以可以观察到所在路径环境变量的改变。

5.进行赋值操作的时候:等号左右不加空格,赋值时如果值中包含空格要加双引号,shell脚本对空格敏感。

6:

.shell脚本编程笔记(一)_第1张图片

7.如果脚本要设置一个环境变量,就需要将这些变量export出来,也就是需要通知到脚本本地的环境,这是export命令的功能。另外,子进程不能用export影响到产生自己的父进程的环境的。

你可能感兴趣的:(科普)