十一 、Shell篇——Shell脚本
2020-03-30 22:21
1091 查看
什么是Shell脚本
UNIX的哲学:一条命令只做一件事
为了组合命令和多次执行,使用脚本文件来保存需要执行的命令
赋予该文件执行权限
标准的Shell脚本要包含哪些元素
Sha-Bang,也就是第一行注释用什么shell解释该脚本
命令
"#”号开头的注释
chmod u+rx filename 可执行权限
例如:
进入test目录,查看目录内容:新建一个.sh文件,把命名输入进入
user1@SC02ZRC4KMD6N ~ % cat test.sh #!/bin/bash cd test ls user1@SC02ZRC4KMD6N ~ % chmod u+rx test.sh user1@SC02ZRC4KMD6N ~ % ./test.sh a.txt b.txt
执行命令
bash ./filename.sh
./filename.sh
source ./filename.sh
. ./filename.sh
不同执行方式的区别:
(1)bash xx.sh 不需要给文件赋予可执行权限,在子进程中执行命令,,执行完回到父进程
user1@SC02ZRC4KMD6N ~ % cat test.sh #!/bin/bash cd test ls # 执行命令后,又回到当前目录 user1@SC02ZRC4KMD6N ~ % bash ./test.sh a.txt b.txt
(2)./filename.sh 需要给文件赋予可执行权限,在子进程中执行命令,执行完回到父进程
# 执行命令后,又回到当前目录 user1@SC02ZRC4KMD6N ~ % ./test.sh a.txt b.txt
(3)sourch ./filename.sh 在父进程执行命令,可以看到执行完进入奥了test目录
user1@SC02ZRC4KMD6N ~ % source ./test.sh a.txt b.txt user1@SC02ZRC4KMD6N test % pwd /Users/user1/test
(4). ./filename.sh 在父进程执行命令,可以看到执行完进入奥了test目录
user1@SC02ZRC4KMD6N ~ % . ./test.sh a.txt b.txt user1@SC02ZRC4KMD6N test %
内建命令和外部命令的区别
内建命令不需要创建子进程
内建命令对当前Shell生效
通过上面的例子,如果想要让执行的脚本对当前shell没有影响,可以使用bash xx.sh、./filename.sh。
相关文章推荐
- 运维之shell篇-----4.1-20例shell点子脚本
- 详解shell脚本(十一)—— 提高与补充
- 运维之shell篇-----5.20-40例shell点子脚本
- Linux基本功十一:shell脚本执行及交互
- 运维之shell篇------1. Shell概述 、 编写及执行脚本 、 Shell变量
- Linux基础入门——shell脚本的数组与变量替换(十一)
- 【Shell】【学习笔记】Linux Shell脚本应用(十一)
- 一起学shell(十一)之安全的shell脚本:起点 推荐
- 一起学shell(十一)之安全的shell脚本:起点
- Shell脚本入门(十一) - 子程序
- 常用shell脚本
- shell 脚本:svn 查找用户,并导出修改文件
- shell脚本编程2及练习
- shell脚本创建系统账户并添加ssh
- shell脚本中的``导致sed命令解析失败
- shell 脚本攻略--小试牛刀
- 通过脚本案例学习shell(三) --- 通过交互式脚本自动创建Apache虚拟主机 推荐
- shell 脚本批量删除redis中wwww前缀的key值
- Shell脚本统计文件行数的8种方法
- Linux 学习第五课、Vim编辑器与Shell命令脚本