SHELL脚本
一、shell脚本定义
shell是一种特殊的交互式工具,它为用户提供了启动程序、管理文件系统中文件以及运行在系统上的进程的途径。shell一般是指命令行工具。它允许你输入文本命令,然后解释命令,并在内核中执行。shell脚本,也就是用各类命令预先放入到一个文本文件中,方便一次性执行的一个脚本文件。
Mac电脑自带的shell脚本是bash。
二、脚本执行相关命令
$ source FileName
意思:在当前shell环境中读取并执行FileName中的命令
特点:命令可以强行让一个脚本去立即影响当前的环境(一般用于加载配置文件)。
命令会强制执行脚本中的全部命令,而忽略文件的权限。
$ bash FileName 、 $ zsh FileName
意思:重新建立一个子shell,在子shell中执行脚本里面的句子
$ ./FileName
意思:读取并执行文件中的命令。但有一个前提,脚本文件需要有可执行权限。chmod +x
查看当前电脑有多少个shell命令:
cd /private/etc
cat shells
三、用户、组、权限
Unix和Linux都是多用户、多任务的系统,所以这样的系统里面就拥有了用户、组的概念。那么同样文件的权限也就有相应的所属用户和所属组了。
【 权限 】 【连接】【所有者】 【所属组】 【文件大小】 【最后修改日期】 【文件名称】
1、文件类型与权限
文件权限:[r]:read,读 [w]:write,写 [x]:execute,执行
注意:这三个权限的位置不会改变,依次是rwx。出现减号[-]在对应位置,代表没有此权限
一个文件的完整权限,总共分为三组:
第一组:文件所有者的权限
第二组:这一组其他用户的权限
第三组:非本组用户的权限
2、改变权限:chmod
文件权限的改变使用chmod命令。设置方法有两种:数字类型改变和符号类型改变
由于文件权限分为三中身份:[user][group][other] 三个权限:[read][write][execute]
数字类型:
各个权限数字对照:r:4 w:2 x:1
如果一个文件权限为 [-rwxr-xr-x]
User:4+2+1 = 7
Group:4+0+1 = 5
Other:4+0+1 = 5
符号类型:
chmod [u、g、o、a] [+(加入)-(减去)=(设置)] [r、w、x] 文件名称