频道栏目
首页 > 资讯 > 其他 > 正文

十一 、Shell篇——Shell脚本-12926780-51CTO博客

20-05-14        来源:[db:作者]  
收藏   我要投稿
什么是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.shsource ./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。

相关TAG标签
上一篇:gps位置模拟器在的使用价值-wx5c55329eab678的博客-51CTO博客
下一篇:gps位置模拟器在的使用价值-wx5c55329eab678的博客-51CTO博客
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站