1.bash和source的区别:bash(包括通过路径执行脚本)是non-login状态下,创建子shell进程,执行的shell脚本,因此其间创建的任何变量都将在程序执行完毕后,销毁,即父进程(原来的shell)是无法访问这些变量的;source则直接在当前shell环境下执行该shell脚本,因此脚本申请的变量可以被访问。

2.test -e filename:关于某个档名的文件类型的判断,参数:

1)-e:是否存在

2)-f:是否存在且为文本档案

3)-d:是否存在且为目录

4)-b:是否存在且为block device

5)-c:是否存在且为character device

6)-S:是否存在且为Socket档案

7)-p:是否存在且为FIFO(pipe)档案

8)-L:是否存在且为一个链接档

test -r filename:关于档案权限的侦测,参数

1)-r:是否存在且有可读权限

2)-w:是否存在且有可写权限

3)-x:是否存在且有可执行权限

4)-u:是否存在且有SUID权限

5)-g:是否存在且有SGID权限

6)-k:是否存在且有Sticky bit权限

7)-s是否存在且为非空白文档

test file1 -nt file2:两个档案之间的比较

1)-nt:file1是否比file2文件新

2)-ot:file1是否比file2文件旧

3)-ef:file1与file2是否为同一个档案,可用在判断hard link的判定上,主要意义在判定,两个档案是否均指向同一个inode。

test n1 -eq n2:两个整数之间的判断

1)-eq:两数相等

2)-ne:两数值不等

3)gt:n1大于n2

4)lt:n1小于n2

5)ge:n1大于等于n2

6)le:n1小于等于n2

判定字符串数据

1)test -z string:判定字符串是否为空,空,则为true

2)test -n string:判定字符串是否非空,非空为true

3)test str1=str2:判断str1是否等于str2,相等则为true

4)test str1!=str2:判断str1是否不等于str2,不等则true

多重条件判定,test -r filename -a -x filename

1)-a:and,两个同时成立返回true

2)-o:or,任何一同成立

3)!:取反,即不成立返回true

3.在脚本当中可以用[]来实现test的功能,不过需要注意,[]中的的内部两端必须有空格,另外:

1)在中括号内的每个组件都需要空格来分割

2)在中括号内的变量,最好以双引号括起来

3)在中括号内的常量最好以单或双引号括起来

中括号常用于条件判断语句中

4.shell脚本中的一些特殊变量

1)$#:代表后接的参数的个数

2)$@:代表"$1 $2 $3 $4"

3)$*:代表"$1c$2c$3c$4",其中c为分隔符

4)$n:代表第n个参数

5.shift n:参数变量偏移,即拿掉前面的几个参数,然后对应的参数也做相应的变化。

6.条件判断:

if[ 条件判断1 ]&&[ 条件判断2 ];then

操作指令

elseif[ 条件判断1 ]||[ 条件判断2 ];then

操作指令

elseif[ 条件判断1 -o 条件判断2 ];then

操作指令

elseif[ 条件判断1 -a 条件判断2 ];then

操作指令

else

操作指令

fi

7.常用端口:

1)80:www

2)22:ssh

3)21:ftp

4)25:mail

5)111:RPC(远程过程调用)

6)631:CUPS(打印服务功能)

8.case语句:

case $param in

"选项1")

操作指令

;;

"选项2")

操作指令

;;

*)           #默认选项

操作指令

;;

esac

9.函数:function,

function fname(){

程序片段

}

10.循环:

1)while do done:当condition成立时,进入循环,直到条件不成立,终止循环

while [ condition ]

do

程序片段

done

2)until do done:当condition条件成立时,就终止循环,否则就持续进行循环

until [ condition ]

do

程序片段

done

3)for...do...done:

for var in con1 con2 con3...

do

程序片段

done

该循环会将con1,con2...依此赋给var,然后执行程序片段

for((初始值;限制值;执行步阶))

do

程序片段

done

11.seq n1 n2:生成n1到n2之间的连续数字

12.sh [-nvx] script.sh:执行脚本,参数,

1)-n:不要执行script,仅查询语法问题

2)-v:在执行script前,先将script的内容输出到屏幕上

3)-x:将使用到的script内容显示到屏幕上

转载于:https://blog.51cto.com/7613577/1596912

shell脚本相关指令相关推荐

  1. shell脚本相关命令实验总结

    通过实验,掌握了shell脚本编写的基本知识,掌握了shell脚本命令的使用,在实验过程中会记混命令的使用,但通过实验的多次使用也已大部分掌握,在实验过后也会多次练习使用,做到熟悉运用shell脚本的 ...

  2. Shell脚本相关命令

    Shell脚本基本概念 一组命令的集合 把脚本文件提交给Bash解释执行 支持以编程的方式编写命令 支持自动化运维 脚本的执行方式 第1种方式 设置脚本文件的可执行权限  (chmod  a+x  m ...

  3. shell脚本相关总结(1)

    shell脚本 一.shell简介 二.变量 三.数组 四.运算符 五.关系运算符 一.shell简介 shell是一个命令解释器,提供用户和机器之间的交互.它支持特定的语法,比如逻辑判断.循环.每个 ...

  4. linux循环处理脚本命令,后端开发必须掌握的Linux命令[Shell脚本篇]

    Shell脚本相关命令 介绍 一句话说明shell脚本是个啥 shell脚本就是将多个shell指令汇集到一起去完成一个复杂的功能 类似windows下的批处理文件 一般以sh为文件后缀 语法 程序结 ...

  5. 如何实现Shell脚本开机自运行

    场景 工作中使用电脑要求使用相关的工作软件,开机自启动的 需求 工作日晚8点之后和周末都要自动关闭相关的工作软件 花了一点时间摸索出来,整理总结下便于以后回顾. Shell脚本相关 根据以上需求,编写 ...

  6. Linux的Shell脚本加密

    Linux的Shell脚本加密 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 Linux的Shell脚本加密 @[toc] ...

  7. shell脚本特殊变量与变量子串相关知识

    一.shell脚本特殊变量 1.shell中常用特殊位置变量说明: $0 获取当前执行的shell脚本的文件名,如果执行脚本包含了路径,那么就包含了脚本路径 $n 获取当前执行的shell脚本的第n个 ...

  8. linux常用指令和shell脚本

    文章目录 一.虚拟机的安装 二.linux常用基础命令 2.1文件查看相关 2.1.1pwd 列出当前目录的路径 2.1.2 ls 列出当前目录下的所有文件 2.2创建.重命名文件\文件夹 2.3 链 ...

  9. shell的相关知识(变量、脚本定义)

    一.shell的相关知识: 1.对于shell编程语言大体分为:机器语言.汇编语言.高级语言 2.shell变量类型:事先确定数据的存储格式和长度 shell变量分为:字符型.数值型 数值型又分为:整 ...

最新文章

  1. ACM第一天研究懂的AC代码——BFS问题解答——习题zoj2165
  2. Keras处理TIFF图像
  3. 转贴 周鸿祎充其量算作一个低级商人
  4. Can't locate SVN/Core.pm in @INC (you may need to install the SVN::Core module)报错
  5. CF773F Test Data Generation(倍增FFT/动态规划)
  6. linux账户管理代码和截图,linux 用户管理(示例代码)
  7. pytorch-alexnet-推理
  8. 内容联盟程序_英雄联盟可以偷看你的网页?你的账号密码还安全吗?
  9. python使用BeautifulSoup的prettify功能来处理HTML文档,之后使用Levenshtein编辑距离计算文档间的相似度
  10. bcd转ascii码 流程图_十进制ASCII与BCD码转换程序清单
  11. 恒生电子Java开发岗的面试题汇总
  12. Netty4 websocke实现聊天功能
  13. LED串联并联驱动方式分析
  14. unity3d通过粒子系统制作火焰效果
  15. 常用方法——4.JS将yyyy-MM-dd HH-mm-ss格式日期转换成时间戳
  16. Redis(测试连接, 五大数据类型,三种特殊数据类型)
  17. 【MySQL】MacM1下的MySQL安装与配置
  18. 推荐9个做简历的网站
  19. Internet Download Manager v6.41.3中文特别版IDM下载器免费下载
  20. 淘宝/天猫如何获得店铺的所有商品?

热门文章

  1. java 点击一下左边按钮_右边显出一列表_举个例子_java椭圆按钮怎么设置,最好举一个简单的例子,只要有窗体中一个椭圆按钮就可以,最好有注释,谢谢,好的...
  2. lodash是否是数组_lodash源码解析:for家族
  3. mysql 截取json字符串_mysql如何截取一个json字符串?
  4. 大话信号多久可以移服务器,关于第十届服务器联赛规则及日期详细介绍(二)...
  5. 2021年陕西高考成绩单招查询时间,2021年陕西高考录取结果什么时候出来,查询时间一览表...
  6. Jfinal中Cron4jPlugin使用
  7. 腾讯AI又搞出大动作:Robotics X机器人实验室成立,签Nature办新AI大会
  8. 如何用sklearn创建机器学习分类器?这里有一份上手指南
  9. DNGuard HVM 专业版 v2.7 正式发布。
  10. 单体应用架构和微服务架构的区别