linux shell基础
shell概述
- shell 是一个命令解释器。
- shell 将输入的命令与内核通信,通过内核控制硬件完成命令。
- shell 是一个功能强大的编程语言,易编写,易调试,灵活性强。
- shell 是解释性脚本语言,可以直接调用Linux系统命令。
echo命令
参考之前的文章:
05 linux shell脚本 变量的取用echo
07 linux 一个完整的shell脚本调试工具
shell脚本的执行方式
- 赋予执行权限,使用绝对路径,相对路径 直接执行
chmod 755 xxx.sh
./xxx.sh # 相对路径 - 通过Bash调用执行脚本
Bash xxx.sh
sh xxx.sh
Bash的基本功能
历史命令
history命令用于显示用户以前执行过的历史命令,并且能对历史命令进行追加和删除等操作
语法格式: history [参数] [目录]
常用参数:
| 参数 | 作用 |
|---|---|
| -a | 将当前shell会话的历史命令追加到命令历史文件中,命令历史文件是保存历史命令的配置文件 |
| -c | 清空当前历史命令列表 |
| -d | 删除历史命令列表中指定序号的命令 |
| -n | 从命令历史文件中读取本次Shell会话开始时没有读取的历史命令 |
| -r | 读取命令历史文件到当前的Shell历史命令内存缓冲区 |
| -s | 将指定的命令作为单独的条目加入命令历史内存缓冲区。在执行添加之前先删除命令历史内存缓冲区中最后一条命令 |
| -w | 把当前的shell历史命令内存缓冲区的内容写入命令历史文件 ~/.bash_history |
注意重点:
- 执行history命令包含本次会话 执行过的历史命令。
- 默认在会话结束时,linux将本次会话的历史命令保存到命令历史文件 ~/.bash_history 中去。
- 历史命令默认保存1000条;可以在环境变量配置文件中/etc/profile 修改,需要重新导入配置文件或者重新登录才能生效。


快速调用历史命令
- 使用上下箭头调用历史命令(最常用)
- 使用" !n " 重复执行第n条历史命令
- 使用" !! " 重复执行上一条命令
- 使用" !str " 重复执行最后一条以str字符串开头的命令
代码补全
话不多说,多按Tab键就行了。
命令别名
alias命令用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。使用alias时,用户必须使用单引号 ‘ ‘ 将原来的命令引起来,防止特殊字符导致错误。
alias命令的作用只局限于该次登入的操作。若要每次登入都能够使用这些命令别名,则可将相应的alias命令存放到bash的初始化文件 /etc/bashrc中。
语法格式:alias [参数]
常用参数:
| 参数 | 作用 |
|---|---|
| -p | 打印已经设置的命令别名 |

删除别名 unalias 别名
使用别名时,需要注意:命令的执行顺序
- 第一顺位执行用绝对路径或相对路径执行的命令。
- 第二顺位执行别名。
- 第三顺位执行Bash的内部命令。
- 第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令。
Liunx常用快捷键
| 快捷键 | 作用 |
|---|---|
| ctrl+A | 把光标移动到命令行开头,命令过长使用该快捷键 |
| ctrl+E | 把光标移动到命令行结尾 |
| ctrl+C | 强制终止当前命令 |
| ctrl+L | 清理,相当于clear命令 |
| ctrl+U | 删除或剪切光标之前的命令 |
| ctrl+K | 删除或剪切光标之后的内容 |
| ctrl+Y | 粘贴ctrl+U 或 ctrl+K剪切的内容 |
| ctrl+R | 在历史命令中搜索,按下ctrl+R之后,就会出现搜索界面,只要输入搜索内容,就实现历史命令搜索 |
| ctrl+D | 退出当前终端 |
| ctrl+Z | 暂停,放入后台。该快捷键牵扯工作管理的内容,涉及到系统管理 |
| ctrl+S | 暂停屏幕输出 |
| ctrl+Q | 恢复屏幕输出 |
黄色背景的快捷键为常用快捷键



如果不使用ctrl+Y,ctrl+U的作用就是删除;
如果使用ctrl+Y,ctrl+U的作用就是剪切;
ctrl+K和ctrl+Y也可以成对出现。
本文详细介绍了Linux Shell的基础知识,包括shell的概述、echo命令、脚本执行方式以及Bash的基本功能。重点讲解了如何使用历史命令快速调用、代码补全、命令别名以及相关快捷键。此外,还提到了如何设置和删除命令别名,并强调了命令执行的顺序。了解这些内容将有助于提升Linux系统的操作效率。

1569

被折叠的 条评论
为什么被折叠?



