1、在一般命令窗口输入的命令直接拷贝到脚本文件中就可以执行。

2、判断文件或文件夹是否存在、具有执行权力等。[改写自网络]

#!/bin/shNovaPath=”/var/log/httpd/”
NovaFile=”/var /log/httpd/access.log”#(1) -x 参数判断$NovaPath是否存在并且是否具有可执行权限
if [ ! -x "$NovaPath"]; then
mkdir “$NovaPath”
fi#(2)-d 参数判断$NovaPath是否存在
if [ ! -d "$NovaPath"]; then
mkdir “$NovaPath”
fi#(3)-f参数判断$NovaFile是否存在
if [ ! -f "$NovaFile" ]; then
touch “$NovaFile”
fi#(4)-n参数是判断一个变量是否是否有值
if [ ! -n "$NovaVar" ]; then
echo “$NovaVar is empty”
exit 0
fi#(5)两个变量判断是否相等
if [ "$var1" = "$var2" ]; then
echo ‘$var1 eq $var2′
else
echo ‘$var1 not eq $var2′
fi

3、让脚本在执行时遇到错误就停止执行,需在开始时添加命令:

set e

例如:

#!/bin/sh
set e

4、判断上一条语句是否执行成功:

#!/bin/sh
TEST_PATH="/data/TestDir"
mkdir "$TEST_PATH"
#下面这条语句完成判断上面文件夹创建成功与否
if [ $? -eq 0 ]
thenecho "mkdir,suc"
elseecho "mkdir,fail"
fi

需要注意的是,“[”之后和“]”之前都有空格

5、创建一个文件

例如要在data目录下创建一个名字为test.txt的文件,可使用如下命令:

touch /data/test.txt

6、变量及其赋值

(1)shell脚本中变量由全大写字母加下划线组成。

(2)赋值时,赋值符号“=”的两边都不要有空格

(3)定义的所有变量都使字符串,例如,TESTVAR=45,这里TESTVAR的值是字符串“45”

(4)变量不需要先定义后使用,但是如果取一个未定义的变量的值,则其值为空字符串。

(5)在定义变量的时候不使用$,但是在取变量值的时候使用$.

7、方括号[]

(1)在字符匹配时,[若干字符] 表示匹配方括号中任意一个字符的一次出现。

(1)命令[为条件测试命令,与test命令类似,但是命令[的最后一个参数必须是],例如:

#test命令

>   TESTVAR=45

>   test $TESTVAR -gt 32

>   echo $?

0

#[命令

>   [ $TESTVAR -gt 32 ]

>   echo $?

0

注意:各参数之间要用空格隔开,尤其是]之前一定不要忘记。

shell脚本的一些用法笔记相关推荐

  1. shell脚本常用语句用法笔记

    脚本基本语句用法笔记 grep -i 查询时不区分大小写 -n打印匹配的行号 -v 打印不匹配的行 -AX包括每次匹配之后X行 -BX包括每次匹配之后X行 cat /etc/passwd |grep ...

  2. shell脚本的系统性学习笔记

    shell脚本的系统性学习笔记 文章目录 shell脚本的系统性学习笔记 一.入门基础 1.1 脚本的书写格式 1.2脚本的各种执行方式 1.3数据的输入与输出 1.4输入输出重定向 1.5变量 二. ...

  3. Linux Shell脚本攻略 读书笔记

    内容目录: 嗨,Echo一下 给终端来点颜色 shell的控制结构 算术比较 目录操作 网站下载 tar 归档工具 rsync 备份系统快照 ftp自动传输 磁盘管理 故障排查 使用syslog记录日 ...

  4. shell脚本之echo用法

    shell脚本之echo用法 1.echo常见转义符号 符号 功能描述 \b 退格键(backspace) \f 换行但光标仍停留在原来的位置 \n 换行且光标移至行首 \r 光标移至行首但不换行 \ ...

  5. shell脚本中的$用法

    shell脚本中的$用法 变量 含义 $0 shell脚本的文件名 $1 ~ $n 添加到shell脚本中的各参数: 即执行shell脚本时后跟的内容: $1为第1参数,$2为第2参数 $? shel ...

  6. 《Linux命令行与shell脚本编程大全》笔记一

    第一章 初始 Linux shell Linux内核主要四种功能: 1.系统内存管理 2.软件程序管理 3.硬件设备管理 4.文件系统管理 shell:交互工具. 第三章 基本的bash shell ...

  7. Shell脚本中$的用法

    2019独角兽企业重金招聘Python工程师标准>>> $0: 脚本名称,相对路径还是绝对路径要看调用的方式.如果是在父目录中,./dollarTest.sh调用,那么$0就是 ./ ...

  8. Linux命令行与Shell脚本编程大全读书笔记

    Linux内核4大主要功能: 内存管理 进程管理 设备管理 文件系统管理 Linux系统启动的进程和脚本管理 1./etc/inittab   管理系统开机时会自动启动的进程 2./etc/init. ...

  9. linux cat 脚本,Linux Shell 脚本攻略 读书笔记 -- 201.cat的几种用法

    cat可以读取.显示和拼接文件内容 1. 打印单个文件: root@debian:/home/chicol/scripts# cat file.txt This is a line inside fi ...

最新文章

  1. vijos 1006 晴天小猪历险记之Hill——数字三角形的终极变化
  2. 如何禁止电脑某个程序运行(强制自律)
  3. java自制缓冲池_java String 缓冲池概念的举例说明
  4. android 本地图片分享,Android 把图片保存到本地相册
  5. R 学习 - 功能富集泡泡图
  6. 关于c语言编写 单项链表 的创建、插入、修改、删除、显示、退出 的程序案例
  7. Python之数据分析(算数平均值、加权平均值、最大值与最小值)
  8. 关于40G/100G高速PHY的测试
  9. 平稳过程的各态历经性
  10. 西门子plc软件 linux,西门子PLC编程软件
  11. PAYPAL使用虚拟信用卡验证的技巧
  12. 斗鱼赴美上市 穷途末路还是绝处逢生?
  13. 【前端】vuecli项目引入ant-design-vue并用ant-design-vue配置阿里巴巴矢量图标库
  14. 【科研绘图】用PPT进行科研用图的图片预处理
  15. Wijmo JavaScript UI 5.20222.877 Crack
  16. java: 找不到符号 符号: 方法 getResourceAsStream(java.lang.String) 位置: 类 com.alibaba.druid.support.loggi
  17. Hive面试题考点-整理
  18. 你的电脑里还在装着360杀毒软件吗?最好用的,免费的都在这里,给你的电脑换个好的杀软~!...
  19. 破解PPT密码的方法
  20. 5000年历史的沉淀

热门文章

  1. 数字图像处理 中值滤波 MATLAB实验
  2. cmake 添加二进制文件_CMake构建系统
  3. java 阻塞 直到完成_完成所有提交的任务后关闭Java执行程序而不会阻塞
  4. linux更新软件载入缓存后停止_linux 中缓存怎样清除
  5. wscript.exe无法打开vbs_如何恶搞朋友的电脑?超简单的vbs代码
  6. 【C语言】fgets函数返回值
  7. windows操作系统,python环境下django的自动安装
  8. u盘在磁盘管理可以显示 但是电脑中找不到_U盘无法识别怎么办?试试这种方法,没准还有救!...
  9. 计算机excel图表考试题库,2016年职称计算机考试Excel操作题库
  10. qt 子窗口与父窗口数据通信_Qt实例--主窗口和子窗口互发信号