linux,shell
2015-02-07
1.计划任务:corntab -e 编写计划任务 corntab -l查看计划任务 corntab -r清除所有的计划任务
如果要清除某一项计划任务,就是进入计划任务的编辑页面,逐个删除就可以了
2.任务计划编写与执行
内容:
格式 : 分 时 日 月 年 命令
[root@localhost cPre]# */5 * * * * 命令 #每隔5分钟执行一次
[root@localhost cPre]# 00 09 * * 20 命令 #每周2到周日的9点执行一次命令
[root@localhost cPre]# 00 09 * * 2,3,4 命令 #每个周2,3,4的9点执行一次命令
3.linux下的反引号作用
date=`date "+%Y-%m-%d"` #反引号,表示反引号内的命令作为单个个体执行完之后再赋值
tar czf web-${date}.tar.gz web # $号的输出格式
4.shell的变量类型与应用
a. 区分大小写 不能以数字开头
b. 格式 : 变量名 = 变量值 #变量提高代码灵活度 (** 在linux中,变量赋值的指令之间不能带有空格)
c. 输出变量
echo "输出内容"
name=‘liangi‘
echo $name
echo "my name is ${name}" #注意$符号的使用
d. 变量的赋值
输入赋值: read -p “Please inout your name: ” name #将输入的值赋值给name
echo $name
e.不同的引号为变量赋值 (单双引号都不能引用转移字符)
双引号 " " : 解析变量,就是说,双引号里面的时变量
单引号 ‘ ‘ : 不能解析变量,里面的变量不能解析出来
反引号 ` ` : 把反引号里的命令执行出来再赋值
f.删除变量
unset name
定义变量使用了之后,把变量删除unset之后,又可以重新赋值
2015-02-08
1. 位置变量
位置变量是先在脚本里定义好位置变量数,在执行的时候就是
# ./loca.sh 1 sd d f h
然后在接下来的输出中就会显示所定义的位置变量
2. 预定义变量
将所有在学预定义变量的时候,所作的笔记注释粘贴出来
--start--
#!/bin/bash
#预定义变量测试与学习
#这个程序调试了很久,出错原因主要是写程序的时候粗心出错,还有的就是空格的问题,shell的空格很讲究的,就像是在终端输入命令。因此,在写linux-shell脚本的>时候就当是在终端中输入linux命令一样,讲究格式,以一颗在linux下输入命令的心去写linux脚本
echo $0 #,显示当前脚本的名称
echo "你当前脚本的名称是:$0"
echo $# #获取所有参数个数
echo ‘我是歌手‘
echo $* #列出变量是什么
ls
echo $? #回馈上一条命令是否执行正确,正常,则返回0
total=0
for i in $*; do
total=$(($total+$i)) #将每个预定义变量相加,预定义的变量必须是数字才能相加
echo $total
done
echo $total
if [[ $? == 0 ]]; then
echo ‘上条命令执行成功‘
else
echo ‘上条命令执行不成功‘
fi # 标注出有问题的 程序
~
--end--
3.shell脚本的运算
expr 20 + 30 #空格要注意
number=`expr 20 + 30 / 2` #引用命令结果需要加上反引号
echo $((2 + 3 +4))
4. shell脚本的输入与输出
echo -e "sjdk \n ds" #-e解析输出引用的转移字符
echo -n "dsjk" #执行完该命令之后,光标不换行
同:
read -p "Please Input Your Name: " name
echo $name
echo #直接输出的是空行
脚本输出字体颜色--(需要echo -e才能识别)
语法
echo -e "\033[32;40m[ok]\033[0m"
\033[前景颜色;背景颜色m
\033[0m #0m代表恢复到系统配色方案
代码要写全
颜色:
30-37 代表前景颜色 黑红绿棕蓝紫青白
40-47 代表背景颜色 黑红绿棕蓝紫青白
5.
cat 查看
cat<<x
aaaa
x #将任意字符xx里面的原样输出-->可以用来做菜单
head 查看前十行
head -2 查看前2行
tail 查看后10行
tail -2 查看后2行
tee 输出一份,还会保存一份
./te.sh | te.txt #保存在当前目录
nl 在输出的文本前面标出行号