知识点:
shell是一个面向过程的解释型语言;
常见shell
/bin/sh
/bin/bash
/bin/ash
/bin/csh
/bin/tcsh
/sbin/nolgin
基本结构
- vim file.sh
#! /bin/bash #定义解释器
定义变量
命令/循环/判断/函数(fuction)
输出echo -e#激活逃逸字符 -t / -n #步子到换行
读取 read -t#定义超时时间 / -p #指定提示字符
退出 exit #0表示执行成功
- chmod +x file.sh #授权
- sh +xv file.sh #调试
- ./file.sh #绝对路径,执行脚本
基本脚本构成
-
命令
-
变量
单一目的的小程序,由shell来解释命令并告诉kernel;set
-e 这句语句告诉bash如果任何语句的执行结果不是true则应该退出
-c dir:在读取 makefile 之前改变到指定的目录dir; -
管道
-
重定向
-
退出
命令
- 替换:变量=${变量}、变量=$(命令)、变量=
表达式
、变量=‘字符串’、变量=值 - 查看:echo $X
- 赋值:expr
- 运算:let、&&#成功执行命令2、||#失败执行命令2
date=$(date -d '+1 day' +%Y-%M) #可输出多行文字,+前一个为格式,-后一个为符号
date =`date -d '+1 day' +%Y-%M` #一行输出
if [-n/-z $string] #如果string非空/空&#