Linux 关于shell [+小案例]


内容不多,没有全部整理,常用的几种

1,什么是shell

1.Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。
2.简单说shell是图形化界面工具,是个软件
3.同时它是一种解释性,编程语言,类似JavaScript
ps:解释型语言,是在运行的时候将程序翻译成机器语言。
解释型语言的程序不需要在运行前编译,在运行程序的时候才翻译,专门的解释器负责在每个语句执行的时候解释程序代码。这样解释型语言每执行一次就要翻译一次,效率比较低。

2,常用语法

打开文本编辑器(可以使用 vi/vim 命令来创建文件),新建一个文件 test.sh,扩展名为 sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用 php 写 shell 脚本,扩展名就用 php 好了。
实例:
#!/bin/bash echo "Hello World !"
#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
echo 输出指令

使用变量

使用一个定义过的变量,只要在变量名前面加美元符号即可,如:
定义变量:直接变量名,变量值

your_name="wuyanzu"
echo $your_name
echo ${your_name}

推荐所有变量加上花括号,不加输出的时候会误判后边的语句

权限

chmod 777 xxx:为了运行要加权限,777代表全给

if语句
a=10
b=20
if [ $a==$b ]
 then echo "a 等于 b" 
else echo "没有符合的条件"
fi
for
for loop in 1234
do
	echo"value is:$loop"
done
输入/输出重定向

输入
输入command<file
wc -l 11.txt 统计行数
cat xxx.sh也是输入
输出
command>file一样的会被覆盖
command>>file追加
ll> /dev/null(禁用输出的效果)
ll>/dev/null 2>&1(2错误输出,0标准输入,1标准输出)

crond系统定时任务

下载插件
~/ yum list|grep crontab 先查询
~/ yum install crontabs.noarch 下载
重启
service crond restart 重启服务
定时命令
crontab -e 编辑定时任务
crontab -l 查询定时任务
crontab -r 删除当前用户的所有定时任务
时间语法
在这里插入图片描述
* * * * *
分,时,天,月,星期
编辑定时内容
0 * * * * /task/task.sh 意思就是每分整时会执行task.sh

3,使用注意事项

shell在/bin/ bash进行解析运行
#!/bin/bash要在编辑上面加上
加注释:# 不能有空格
符号前后要空格

4,备份数据库小案例

每一分钟执行备份,3分钟以后清除(时间自定)

1.下载插件
~/ yum list|grep crontab 先查询
~/ yum install crontabs.noarch 下载
2.重启
service crond restart 重启服务**
3.开启数据库服务
cd/etc/init.d 所在文件夹
service mysqld restart 开启服务
4.查看数据库user是否分配密码
在这里插入图片描述
3.新建task文件

[root@ContOS64 /]# mkdir task

新建task.sh

[root@ContOS64 task]# vim task.sh

编辑,添加实时文件名,备份数据库,以及删除超过时间的信息

#!/bin/bash
time=$(date +%Y%m%d%H%M%S)
mysqldump -uroont -proot lucene >> /task/mysql_$time.sql
find /task -name *.sql -mmin +3 -exec rm -rf '{}' \;

查找 task下以 .sql 的文件 ,超过3分钟(低于写减号) 然后执行 rm -rf 删除,’{}’;固定结束语
3.给权限

[root@ContOS64 task]# vim task.schmod 777 task.sh

4.开启定时任务
编辑定时任务,并添加

[root@ContOS64 task]# crontab -e
*/1 * * * * /task/task.sh

6.重启服务

[root@ContOS64 task]# service crond restart

7.完成
每分钟一次,超过三分钟删除。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值