shell脚本

创建sh文件

touch test.sh	//创建sh文件
vi test.sh			//编辑sh文件

在这里插入图片描述

shell脚本开头(#!/bin/bash)

#!/bin/bash
echo "helloword"

shell执行多行命令操作

#!/bin/bash

cd /home/test
touch test01.txt
echo "I LOVE SHELL" >> test01.txt

Esc退出insert模式

:wq编辑状态-保存退出

cat 打印文件内容-(适合内容少文件)

cat  test.txt   	//展示文件内容

shell系统变量

在这里插入图片描述
在这里插入图片描述

自定义变量(变量名=变量值)

在这里插入图片描述

静态变量

在这里插入图片描述

变量定义规则

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

示例:
在这里插入图片描述

定义helloword.sh脚本内容
#!/bin/bash

echo "helloword dahaihaige"
echo $D
定义变量D
D="banzhang love mm"

在这里插入图片描述

export??

在这里插入图片描述

特殊变量

$数字

$0	//文件名
$1	//第一个参数
$2	//第二个参数
.....

在这里插入图片描述
在这里插入图片描述

$# 控制台输入参数的总个数-常用于循环

在这里插入图片描述
打印出参数的个数
在这里插入图片描述

$* 和 $@ 所有参数

在这里插入图片描述

在这里插入图片描述

执行结果:

在这里插入图片描述

$? 判断上一个命令是否执行成功(0-成功,非0-失败)

在这里插入图片描述
结果:
在这里插入图片描述

运算符 expr

在这里插入图片描述
示例:
在这里插入图片描述

条件判断

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

整数间比较大小

-lt	小于
-le	小于等于
-eq	等于
-gt	大于
-ge	大于等于
-ne	不等于

示例:

[ 3 -ge 2 ]			//判断是否  3大于等于2
echo $?			//是一个命令操作是否成功

在这里插入图片描述

文件权限-读、写、执行

[ -w test.sh ]			//判断test.sh文件是否具有写权限   -r 读   -w 写  -x 执行
echo $?				//输出   0-成功    非0-失败

在这里插入图片描述

文件状态判断-f -e -d

-f文件存在,常规文件
-e文件存在
-d文件存在,是目录

在这里插入图片描述

多条件判断&& ||

在这里插入图片描述

流程控制

if判断

if [ 3 -gt 2 ]:then			//[]与3和2之间有空格,if与[]之间也有空格,3前面和2后面都有空格
	echo '"3大于2"
fi
或者
if [ 5 -eq 6 ]
then
	echo "5等于6"
elif [ 5 -gt 6 ]
then
	echo "5大于6"
el
	echo "5小于6"
fi

在这里插入图片描述

注意事项:

在这里插入图片描述
在这里插入图片描述

注意: $1 代表控制台输入的第一个参数,实现动态赋值

在这里插入图片描述

if [ 条件表达式1 ]
then
	程序1
elif [ 条件表达式2 ]
then
	程序2
fi

case语句

case $1 in
18)
	echo "18岁"
	;;							//等价于break
10)
	echo "10岁"
	;;
*)							//等价于default
	echo "其他"
	;;
esac

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

for循环

s=0
for((i=1;i<=100;i++))
do
	s=$[$s+$i]
done
echo $s

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

“$*” 和 "$@"
在这里插入图片描述

在这里插入图片描述

while循环

在这里插入图片描述


touch while.sh	//创建sh文件
vim while.sh	//编辑内容


bash while.sh	//执行sh文件

在这里插入图片描述
在这里插入图片描述

读取控制台输入

-p "提示信息"
-t 7 	//等待时间7秒

read控制台输入

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

basename函数-获取文件名

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

dirname函数-获取文件绝对路径

在这里插入图片描述
在这里插入图片描述

自定义函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cut指定剪切的分割符,输出指定列的内容

在这里插入图片描述
在这里插入图片描述

示例:输出人名中的姓			//姓和名中间有空格,根据空格分割

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

sed流编辑器


-e	//直接在指令模式上进行sed操作

a	//新增
d	//删除
s	//查找并替换

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
新增:
在这里插入图片描述
删除:
在这里插入图片描述
查找并替换:

g	表示global,全部替换

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

awk文本分析工具

在这里插入图片描述
在这里插入图片描述

sudo	表示以管理员身份执行命令
cp 		复制
./		表示当前路径

在这里插入图片描述
更改所有者

在这里插入图片描述
在这里插入图片描述

执行脚本

sh 执行sh文件(方法1)

不用具备可执行权限x

sh hello.sh	
sh+绝对路径
sh /aa/bb/hello.sh
sh+相对路径

bash 执行sh文件(方法2)

不用具备可执行权限x

bash hello.sh
bash+相对路径
bash /aa/bb/hello.sh
bash+绝对路径

chmod 加权限

chmod 777 hello.sh  
777 表示:可读、可写、可执行

./hello.sh 相对路径执行脚本(方法3)

需先赋予可执行权限

.hello.sh

/aa/bb/hello.sh 绝对路径执行脚本(方法4)

需先赋予可执行权限

/aa/bb/hello.sh
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值