Shell是什么
Shell是一个命令行解释器,为用户提供可一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至编写一些程序。
Shell还是一个功能强大的编程语言,易调试,易编写,灵活性强。Shell是解释执行的脚本语言,在shell中可以直接调用Linux系统命令。
Shell的分类
Bourne Shell:主文件名为sh,现在很少使用;
Linux中主要用Bash,与sh兼容。
脚本执行方式
利用vim编写脚本;
执行方式:
- 赋予执行权限,直接运行:chmod 755 文件名
- 通过bash调用执行脚本:bash 文件名
查看与设定别名
- alias (临时生效)
- alias 别名="命令"
- unalias 别名 #删除别名
想要别名永久生效需要写入环境变量配置文件 vi ~/.bashrc
命令生效顺序:
- 执行绝对路径或相对路径执行的命令;
- 执行别名;
- 执行bash的内部命令;
- 执行按照$path环境变量定义的目录查找顺序找到的第一个命令。
Linux常用快捷键
历史命令
历史命令被放在了.bash_history文件中。
输出重定向
标准输入输出:
管道符
通配符
Bash变量
在Bash中,变量的默认类型是字符串型。
Shell中双引号和单引号的区别:若在双引号中有$符跟的变量则有特殊含义,而单引号中仍是字符串。
Shell中的变量分类
- 用户自定义变量;
- 环境变量;
- 位置参数变量;
- 预定义变量;
- 查看所有变量:set
- 删除变量:unset
- 查看环境变量:env
环境变量与自定义变量的区别?
环境变量是全局变量,用户自定义变量是局部变量。
用户自定义变量只在当前Shell中生效;而环境变量会在当前Shell和这个Shell的所有子Shell中生效。
设置环境变量:export
查询当前系统语系:locale
接收键盘输入:read (可以输出提示信息)
Shell运算符
变量类型声明:declare
数值运算方法
- 利用declare;
- expr或let数值运算工具;
- $((运算式))或$[运算式];