Linux Shell学习笔记
基本信息
- 系统:Debian 9.5
- 发行信息:Debian GNU/Linux 9.5/Stretch
Shell基础
update:2018年09月22日
- 只要能够操作应用程序的借口都能成为壳程序Shell。
- 文件
/etc/shells中存放着用户可以使用的shell,/bin/bash是Linux默认的的shell - ex:Debian9.5中可以使用的shell
-
shells.png
- 文件
/etc/passwd中存放着登录时取得的shell,每行的最后一个数据,就是该用户登陆后取得的默认shell - ex:用户kim登录取得的shell为
/bin/bash -
passwd.png
命令历史记录
- 用户通过bash操作的记录都被记录到用户主目录下的
.bash_history中,该文件中记录的是前一次登录以前所执行过的命令。本次登录所执行的命令都被暂存到内存中,当登出系统后,该用户的操作记录才会被记录到该文件中。 - 使用命令
history可查看当前登录用户执行过的命令
命令别名设置
-
alias ll='ls -la'//使用命令ll替代命令ls -la - 如果下次登录该别名时效,还可以通过在文件
~/.bashrc78行左右添加一条记录alias ll='ls-la'-
alias.png
-
查询指令类型
- 使用命令
type可以查询shell指令是file or alias or builtin- 可用的参数有
- p -a -t//参数p仅在指令为外部指令时,显示完整文件名 -
type.png
- 可用的参数有
指令的快速编辑
-
ctrl+u从光标处向前删除指令 -
ctrl+k从光标处向后删除指令 -
ctrl+a从光标处移动到整个指令的最前面 -
ctrl+e从光标处移动到整个指令的末尾
update:2018-09-25
Shell中的变量
- 输出变量内容使用
echo,ex:echo $PATHorecho ${PATH} -
echo.png
- 变量规则
- 变量与变量内容以
=连接,=两侧不能直接接空白字符 - 变量名称只能是英文字母和数字,但是不能以数字开头
- 变量内容若有空白字符,可以使用双引号
"或单引号'将变量内容结合起来,二者的区别是:双引号内的特殊字符仍然保持原本的特性,单引号内的特殊字符仅为一般字符
-
单引号双引号.png
- 可以使用转义字符
\将特殊字符转换为一般字符 - 若指令中需要使用额外指令提供的内容,可以使用
$(comm)or "`\comm `"(数字1左侧的反引号) - 若变量需要在其他子程序中执行,则需要以
export使变量变成环境变量 - 通常大写字符为系统默认变量,自行设置变量可以用小写字符
- 取消变量使用
unset 变量名
-
unset.png
- 变量与变量内容以
- 环境变量的功能
- 使用
env查看环境变量与常见环境变量说明
env.png
- - 使用
set查看所有变量(包含环境变量与自定变量)
- 使用
update:2018-09-26
变量键盘读取
-
read [-pt] 变量-
p后面可以连接提示符 -
t后面可以连接等待时间 -
read.png
-
变量类型定义
-
declar/typeset [-aixr] 变量-
-a将变量定义为阵列类型[array] -
-i将变量类型定义为整数数字[integer] -
-x用法与export一样,将变量定义为环境变量 -
-r将变量定义为只读不可更改内容[readonly] -
typeset.png
-
终端可用资源
ulimit [-SHacdfltu]-
ulimit.png
变量内容的删除、取代与替换
- 变量内容的删除需要用到特殊字符
#new=${old#*_}//删除变量old内容中的_及前面所有的内容,删除从最左侧开始 -
delete.png










网友评论