Shell命令分为两类:
1)内置命令:在系统启动的时候就加载到内存,常驻到内存中,执行效率高,但是占用资源。
2)外置命令:用户需要从硬盘中读取程序文件,再读入内存加载。 /bin /usr/bin /sbin
/usr/sbin 这四个路径下是外置命令。
外置命令特点:一定会开启子进程。
1、echo
-n:不换行输出
-e:解析字符串中的特殊符号
echo “字符串” | tee 文件名 -- 写入字符串到文件名中。而且是有echo的输出打印
echo “字符串” | tee > 文件名 -- 写入字符串到文件名中。但是没有相关的打印
2、for循环
1)for n in {1..100} -- 循环100次
2)修改所有的文件名,或者是文件名替换。将当前文件夹中jpg 文件名带_finished的文件名修改成不带_finished的jpg文件
For file in `ls *.jpg`
do
mv $file `echo ${file//_finished/}`
done
循环语句:
for var in “$*”
do
echo “$var”
done
3、read 是内置命令:
-p:设置提示消息
-t:等待用户输入超时
限时15S内输入名字和年龄给name和age:read –t 15 –p “请输入你的名字和年龄” name age
4、free:
free –m :查看当前的内存情况,获取available的数据,是现实系统中可以提供给应用程序可用的内存大小
free –m | awk ‘NR==2 {print $NF}’ -- 其中NR是行数, NF指的是最后的一个数
5、find:
find查找命令 xargs 是和find的命令配合使用。
6、If判断:
if [ 判断条件 ]; then
执行语句
fi
7、sed 作用:
流编辑器,需要用到正则表达式 -- Linux的三剑客
8、let命令:效果等同于小括号,但是小括号的效率更高。
num=5
let num=num+4 等同于:((num=num+4))
echo $num 结果是9
9、compgen -b 查询哪些是内置命令
10、type:查询命令是内置命令还是外置命令
11、touch:创建,修改文件时间。
12、cat:
cat 文件名 -n -- 带行数的查看文件。
13、printf:打印
14、eval:执行多条命令 命令中间用;间隔
bash 多命令执行: 命令中间用;分割 --- 执行一系列的Shell命令,用()小括号,其中一个小括号是一个子Shell
15、exec:执行完成命令后,自动exit。
16、export:设置或显示环境变量
17、read :读取控制台的输入。
18、shift :用于参数的移动(左移)
19、stdout:1 表示正确,stdout:2 表示错误
20、mail –s “主题” 收件人 < 文件名 -- 将发邮件到收件人,内容是文件名中的内容
21、crontab –l –e : crontab的相关操作需要学习 -- 周期性执行的任务。
22、rsync 起停脚本开发 – 远程CP文件
23、Linux别名功能:alias是别名的意思。
24、return是结束函数的执行,返回值。
25、exit是结束Shell环境,返回一个值到当前的Shell。用于退出Shell环境。