---恢复内容开始---
1、交互语言
read input()
read a b c
aa bb cc
read命令同时可以定义多个变量值;而输入的内容默认以空格我分隔符,将之输入到对应的变量中;
如果默认值过多,最后所有值都会被赋予给最后一个变量
如果默认值过少,多余的值则为空值;
示例:
read a b c
aa bb cc
read如何输入:
echo "请输入一个目录:"
我们需要echo -n 取消换行符号
echo "请输入一个目录:";read 变量
请输入一个目录: \etc
常用参数:
-p
read -p "请输入一个目录:" 变量
-t 定义超时时间
read -t 5 - "请输入一个目录:" 变量
脚本默认值
echo -e 使echo命令,能够识别特殊字符
\r回车不换行
\n换行符
\t制表符 tab=4个空格
2、for语句循环
for语句的应用场景:
有一个功能,这个功能需要循环执行,只是执行对象不同;(对象必须是同类数据)
for语句格式:
a={’a‘,’b‘,’c‘} --- 在python程序中,我们很多情况下,需要调用相应的方法去生成列表;
for 变量 in列表;do
循环体
done
九九乘法表:
列表的生成方式
1、直接给出字符串列表
for i in a b c d e;do
循环体
done
2、整数列表
a{start ....end} //{1....1}是不行的{1....9} ==python range{1,100}
b seq 命令引用 $(seq[start[step]]end)
步长 python range {1,200,2}
seq 20 30
3、返回列表的命令
$(COMMAND)
应用场景:ls /var/log
4、glob机制
test命令总结:
1、test的命令的option的-a -o 只在命令中使用
注意:做字符串匹配的时候,不支持正则以及通配符
2、test test = = [[ ]]
在连接两个test的命令的时候,不能使用命令内部option -o -a、
一般使用 || && == != >= <=
[[yum.log ==*.log]]
5、变量引用
$@ $* 将参数作为for循环列表
$0 ---和awk不一样
bash中$0代表运行的脚本文件
awk中$0整行内容 --- awk按行执行
需要多个词 的时候用"$@",需要一个词是用"$*"
lrzsz
执行命令:apt-get install lrzsz 安装一个可以上传,下载的软件
执行命令:rz 选中文件,然后上传
执行命令:sz 文件名 下载文件