什么是shell?
shell:壳,命令解释器,负责解析用户输入的命令。
可用 type 查看命令是file、alias还是builtin
type -t 仅列出命令执行时的依据
type -a 列出当前命令可以如何执行
内置命令:shell内置的命令
外置命令:在文件系统的某个目录下,有个与命令名称相同的文件。
shell中的变量
变量简单说就是让某一个特定字符串代表不固定的内容。
变量可分为两类:环境变量(全局变量)和普通变量(局部变量)
环境变量也可称为全局变量,可以在创建它们的Shell 及其派生出来的任意子进程 Shell 中使用,环境变量又可分为自定义环境变量和 bash 内置的环境变量。
普通变量也可称为局部变量,只能在创建它们的Shell函数或Shell脚本中使用,普通变量一般由开发者在开发脚本程序时创建。
环境变量可以在命令行中设置和创建,但用户退出o命令时这些变量值就会丢失,因此,如果希望永久保存环境变量,可在用户家目录下的 .bash_profile 或 .bashrc (非用户登录模式特有,例如远程 SSH)文件中,或者全局配置 /etc/bashrc (非用户登录模式特有,例如远程 SSH)或 /etc/profile 文件中定义,在将环境变量放入上述的文件中后,每次用户登录时这些变量都将被初始化。
(1)设置环境变量
(2)设置环境变量(永久生效)
显示与取消环境变量
(1)通过 echo 或 printf 打印环境变量
(2)用 env 或 set 显示默认(即已存在)的环境变量
(3)用 unset 消除本地变量和环境变量
命令别名
alias 别名=’原命令 -选项/参数’
查看设置的别名:alias
删除别名:unalias 别名
别名永久化: alias的作用仅在该次登入的操作,即输入一次alias后,这个修改只在当前的Shell生效。如果重新开启一 个 Shell,或者重新登录,则这些alias将无法使用。
1.若要每次登入就自动生效别名,则把别名加在/etc/profile或~/.bashrc中。然后# source ~/.bashrc
2.若要让每一位用户都生效别名,则把别名加在/etc/bashrc最后面,然后# source /etc/bashrc
引号使用
符号 | 作用 |
' 单引号 | 输出时,将单引号内的所有内容都原样输出,这称为强引用 |
" 双引号 | 弱引用,”$“和“\”以及“ ` ”在双引号里面仍然 保留自己的特殊含义 |
` 反引号 | 优先执行反引号中的内容 |