Linux中shell基础知识
一:什么是shell:
定义:Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的界面,他就像是沟通计算机和用户的一个桥梁从而方便人机交互,用户既可以输入命令执行,又可以利用Shell脚本编程,完成更加复杂的操作。
二:shell脚本的执行方式:
1:用echo 命令
echo -n 使输出的内容不换行
2.用shell脚本的方式去执行
方法一:步骤:vi xxx.sh -->赋予文件执行的权限 chmod 755 xxx.sh (7的意思是文件的所有者具有可读可写可执行的权限)
用此方法可以在用绝对路径执行,也可以用相对的路径执行
方法二:用bash直接调用来执行脚本
样例:
三:bash的基本功能
1 历史命令:history (系统默认保存的是1000条)
可选项:
-c (不要轻易使用这个参数,否则系统将会清空你之前输入所有命令的历史)
-w 把缓存中的历史命令写入历史命令中保存,默认放到~/.bash_history文件中去。
2 . bash中常用的快捷键
ctrl +c : 强制终止当前的进程
ctrl+z : 将当前的进场放在后台去执行(类似于windows中的最小化)
ctrl+d : 退出当前的系统终端
ctrl+L : 清屏(相当于clear命令)
3:输出重定向:意思是之前你输入命令时不管对错直接在屏幕上会显示结果,重定向的是把输出的结果直接保存在一个文件中去,即不让结果输出在屏幕上。
4 . 多命令顺序执行
5 通配符
6 . bash中其他特殊符号
四:bash变量
1:变量的设置规则
1):变量与变量内容以等号(=)来连接
2): 等号两边不能直接加空格符
3): 变量名称只能是英文字母与数字或下划线,但是数字不能用在开头
4):引用变量名时用 “ 变量名" 或者 ${变量名}**
2:变量的分类
1):用户的自定义变量:
变量名可以自定义
变量值可以自定义
变量的作用可以自定义
2):环境变量:
用户的自定义环境变量(不对系统操作产生影响,会在子shell中生效,不过一般情况下自定义环境变量不常用)
变量名可以自定义
变量值可以自定义
变量的作用可以自定义
系统环境变量:(对系统的环境产生影响)
变量名不能自定义
变量值可以自定义
变量的作用不能自定义
3):位置参数变量:(和预定义变量特征一样)
4):预定义变量:
变量名不能自定义
变量值可以自定义
变量的作用不能自定义
3: 变量的查看:set和env
区别:set可以查看所有变量,而env只能查看环境变量
例如我自定义的变量用set命令就能看到,但是用env则看不到
变量的清除 unset 变量名
4: 位置参数变量
测试$n $* [email protected] $#的用法,其中11,22,33,44,44,66依次为$1,$2,$3,$4,$5,$6
注意:
$(()) 代表的是进行数据运算
5:预定义变量
6:接收键盘输入(交互命令) read [ 可选项 ] 变量名
可选项
-p “提示信息” 在等待read输入时,输出提示信息
-t 秒数 : 指定系统会等待多少秒
-n 字符数: read命令只接受指定n个字符数随后执行
-s 隐藏输入的信息,适用于密码的输入