Linux 学习笔记
一、操作系统
1 不同主流操作系统
- 桌面操作系统
- 服务器操作系统
- 嵌入式操作系统
- 移动设备操作系统
1.1 服务器操作系统
Linux
- 安全、稳定、免费
- 占有率高
Windows Server
- 付费
- 占有率低
1.2 嵌入式操作系统
- Linux
1.3 移动设备操作系统
- iOS
- Android
2 虚拟机
虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统
3 Linux 内核及发行版
内核用于直接控制硬件设备,包含一套终端命令
Linux发行版建立在内核的基础上,Ubuntu 是其中之一
4 Linux 文件系统
Ubuntu 没有盘符概念,只有一个根目录,所有文件都在它下面
1 | graph TD |
4.1 Linux 主要目录
- /:根目录,一般根目录下只存放目录,在linux 下有且只有一个根目录
- 当在终端输入
/home,其实是在告诉电脑,先从根目录开始,再进入到home目录
- 当在终端输入
- /bin、/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等
- /etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有:
- /etc/inittab
- /etc/fstab
- /etc/init.d
- /etc/X11
- /etc/sysconfig
- /etc/xinetd.d
- /home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下
~表示当前用户的家目录~edu表示用户edu的家目录
二、Linux 操作系统的使用
1 Linux常用命令
| 序号 | 命令 | 对应英文 | 作用 |
|---|---|---|---|
| 01 | ls | list | 查看当前文件夹下的内容 |
| 02 | pwd | print work directory | 查看当前所在的文件夹 |
| 03 | cd [目录名] | change directory | 切换文件夹 |
| 04 | touch [文件名] | touch | 如果文件不存在,新建文件 |
| 05 | mkdir [目录名] | make directory | 创建目录 |
| 06 | rm [文件名] | remove | 删除指定的文件名 |
| 07 | clear | clear | 清屏 |
| 08 | tree [目录名] | tree | 以树状图列出文件目录结构 |
使用技巧:
ctrl+shift+=放大终端窗口字体显示ctrl+-缩小终端窗口的字体显示
2 Linux终端命令格式
| command [-options] [parameter] |
说明:
command:命令名,相应功能的英文单词或单词的缩写[-options]:选项,可用来对命令进行控制,也可以省略[parameter]:传给命令的参数,可以是零个、一个或者多个[]代表可选命令(选项)可以合并使用,并且先后顺序不影响结果
3 常用命令补充
3.1 ls 命令
Linux 下文件和目录的特点:
- Linux 文件或者目录名称最长可以有256个字符
- 以
.开头的为隐藏文件,需要用-a 参数才能显示 - . 代表当前目录
- .. 代表上一级目录
ls 常用选项:
| 参数 | 含义 |
|---|---|
| -a | 显示指定目录下所有子目录与文件,包括隐藏文件 |
| -l | 以列表方式显示文件的详细信息 |
| -h | 配合-l 以人性化的方式显示文件大小 |
ls通配符的使用:
| 通配符 | 含义 |
|---|---|
| * | 代表任意个数字符 |
| ? | 代表任意一个字符,至少一个 |
| [] | 表示可以匹配字符组中的任意一个 |
| [abc] | 匹配a、b、c中的任意一个 |
| [a-f] | 匹配从a到f范围内的任意一个字符 |
通配符可以用于其他命令
3.2 cd 命令
| 命令 | 含义 |
|---|---|
| cd | 切换到当前用户的主目录(/home/用户目录) |
| cd ~ | 切换到当前用户的主目录 |
| cd . | 保持在当前目录不变 |
| cd .. | 切换到上级目录 |
| cd - | 可以在最近两次工作目录之间来回切换 |
相对路径和绝对路径:
- 相对路径:在输入路径时,最前面不是/或者~,表示相对 当前目录 所在的目录位置
- 绝对路径:在输入路径时,最前面是/或者~,表示从 根目录/家目录 开始的具体目录位置
3.3 touch 命令
- 如果文件不存在,可以创建空白文件
- 如果文件已经存在,可以修改文件的末次修改日期
3.4 mkdir 命令
| 选项 | 含义 |
|---|---|
| -p | 可以递归地创建目录 |
新建的目录的名称不能与当前目录中已有的目录或文件同名
3.5 rm 命令
| 选项 | 含义 |
|---|---|
| -f | 强制删除,忽略不存在的文件,无需提示 |
| -r | 递归地删除目录下的内容,删除文件夹时必须加此参数 |
3.6 tree 命令(需要安装)
| 选项 | 含义 |
|---|---|
| -d | 只显示目录 |
4 文件系统相关命令
| 序号 | 命令 | 对应英文 | 作用 |
|---|---|---|---|
| 09 | cp 源文件 目标文件 | copy | 复制文件或者目录 |
| 10 | mv 源文件 目标文件 | move | 移动文件或者目录/文件或者目录重命名 |
| 11 | cat 文件名 | concatenate | 查看文件内容、创建文件、文件合并、追加文件内容等功能 |
| 12 | more 文件名 | more | 分屏显示文件内容 |
| 13 | grep 搜索文本 文件名 | grep | 搜索文本文件内容 |
| 14 | echo 文本 | echo | 会在终端中显示参数指定的文字,通常会和重定向联合使用 |
4.1 cp 命令
| 选项 | 含义 |
|---|---|
| -f | 已经存在的目标文件直接覆盖,不会提示 |
| -i | 覆盖文件前提示 |
| -r | 若给出的源文件是目录文件,则cp 将递归复制该目录下的所有子目录和文件夹,目标文件必须为一个目录名 |
4.2 mv 命令
| 选项 | 含义 |
|---|---|
| -i | 覆盖文件夹前提示 |
4.3 cat 命令
cat会一次性显示所有的内容,适合查看内容缺少的文本文件
| 选项 | 含义 |
|---|---|
| -b | 对非空输出行编号 |
| -n | 对输出的所有行编号 |
Linux 中还有一个
nl的命令和cat -b的效果等价
4.4 more 命令
more每次只显示一页的内容,适合于查看内容较多的文本文件more的操作键和man除了无搜索基本一致
4.5 grep 命令
grep允许对文本文件进行模式查找,又被称为正则表达式
| 选项 | 含义 |
|---|---|
| -n | 显示匹配行及行号 |
| -v | 显示不包含匹配文本的所有行 |
| -i | 忽略大小写 |
常用的两种模式查找:
| 参数 | 含义 |
|---|---|
| ^z | 行首,搜寻以’z’开头的行 |
| tp$ | 行尾,搜寻以’tp’结束的行 |
4.6 重定向
- Linux 允许将命令执行结果重定向到另一个文件
- 将本应显示在终端上的内容输出/追加到指定文件夹中
其中:
>表示输出,会覆盖文件原有的内容>>表示追加,会将内容追加到已有文件夹的末尾
4.7 管道 |
- Linux 允许将一个命令的输出通过管道作为另一个命令的输入
- 可以理解为现实生活中的管子,
|分左右两端,左端塞东西(写),右端取东西(读)
常用的管道命令有:
more:分屏显示内容grep:在命令执行结果的基础上查询指定的文本
5 远程管理常用命令
| 序号 | 命令 | 对应英文 | 作用 |
|---|---|---|---|
| 01 | shutdown 选项 时间 | shutdown | 关机/重新启动 |
| 02 | ifconfig | configure a network interface | 查看/配置计算机当前的网卡配置信息 |
| 03 | ping ip地址 | ping | 检测目标ip 地址的链接是否正常 |
| 04 | ssh 用户名@ip | secure shell | 关机/重新启动 |
| 05 | scp 用户名@ip:文件名或路径 | secure copy | 远程复制文件 |
5.1 shutdown 命令
| 选项 | 含义 |
|---|---|
| -r | 重新启动 |
- 不指定选项和参数,默认表示1分钟后关闭电脑
- 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
- 常用命令示例:
| 重新启动操作系统,其中now 表示现在: shutdown -r now 系统立刻关机: shutdown now 系统在今天的20:25会关机: shutdown 20:25 系统再过10分钟后自动关机: shutdown +10 取消之前指定的关机计划: shutdown -c |
5.2 ifconfig 命令
查看网卡对应的IP 地址:
| ifconfig | grep inet |
一台计算机可能会有一个物理网卡和多个虚拟网卡,在Linux 中物理网卡的名字通常以
ensXX表示
- 127.0.0.1 被称为本地回环/环回地址,一般用来测试本机网卡是否正常
5.4 ping 命令
| 检测到目标主机是否连接正常: ping IP地址 检测本地网卡是否工作正常: ping 127.0.0.1 |
ping一般用于检测当前计算机到目标计算机之间的网络是否通畅,数值越大,速度越慢
ping的工作原理与潜水艇的声呐类似,ping这个命令就是取自声呐的声音- 网络管理员之间也常将
ping用作动词——ping一下计算机x,看它是否开着
5.5 ssh 基础(重点)
在Linux 中 SSH 是非常常用的工具,通过SSH 客户端我们可以连接到运行了SSH 服务器的远程机器上
- SSH 客户端是一种使用
Secure Shell(SSH)协议连接到远程计算机的软件程序 - SSH 是目前比较可靠,专为远程登录会话和其他网络服务提供安全协议
- 利用SSH 协议可以有效防止远程管理过程中的信息泄露
- 通过SSH 协议可以对所有传输数据进行加密,也能够防止DNS 欺骗和IP 欺骗
- SSH 的另一项优点是传输的数据可以是经过压缩的,所以可以加快传输的速度
- 常见服务器端口号列表:
| 序号 | 服务 | 端口号 |
|---|---|---|
| 01 | SSH 服务器 | 22 |
| 02 | Web 服务器 | 80 |
| 03 | HTTPS | 443 |
| 04 | FTP 服务器 | 21 |
ssh 命令使用示例:
| ssh [-p port] user@remote |
user是在远程机器上的用户名,如果不指定的话默认为当前用户remote是远程机器的地质,可以是IP/域名,或者是别名port是SSH Sever 监听的端口,如果不指定,就为默认值22
Windows 下SSH 客户端的安装
使用Putty 工具登录远程主机
打开Putty 输入IP,也可以保存设置方便下次登录:


开始会有警告信息,先不用理睬。
下面在弹出框中输入账户和密码回车登录:

- 使用完毕可采用下面几种方法登出:
- 直接关闭终端
- 输入
logout命令退出 - 输入
exit命令退出 - 使用
ctrl+D退出
pscp 工具传输文件
使用pscp 工具可以向主机传输文件:

从cmd命令行进入Putty 安装目录:

类似于Linux 系统的
scp命令,可以直接拷贝Windows 上的文件到Linux 服务器中:
这里username是账户名称,ip是主机IP 地址,后面跟上的是目标文件夹
也可以将Linux 服务器上的文件转移到Windows 上,参考下面
scp命令的使用方法进行操作^2
问题及解决
在连接Ubuntu 系统时可能出现问题,按照如下步骤进行排查(Windows 系统,VBox 虚拟机):
在cmd 中执行ping 命令,看是否连接上Ubuntu 系统,若失败,则尝试以桥接模式开启网卡2:
重启系统,连接成功即可进行下面排查
如果使用Putty 连接提示connection refused,考虑未开启ssh-server,在Ubuntu 中键入命令如下:
sudo apt-get install openssh-server 接下来检查ssh-server 是否正确启动:
ps -e | grep ssh 若显示既有ssh-agent 又有sshd 说明服务已经启动,可以用putty 连接Ubuntu系统了
若以上方法都不行,尝试整一下防火墙^1:
开启防火墙:
sudo ufw enable
开启22号端口:
sudo ufw allow 22
重启防火墙:
sudo ufw reload
查看状态:
sudo ufw status检查ssh 服务是否启动:
ssh localhost
SSH 高级
- 免密码登录
配置公钥
- 执行
ssh-keygen即可生成SSH 钥匙,一路回车即可
- 执行
上传公钥到服务器
- 执行
ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥
示意图

- 执行
有关SSH 配置的信息都保存在用户家目录下的
.ssh目录下
配置别名
每次都输入
ssh -p port user@remote,时间久了会很麻烦,而且不好记忆配置别名可以进一步偷懒,譬如用:
ssh windows来替代上面内容,那么就在~/.ssh/config 里面追加以下内容:Host windows
HostName ip地址
User [username]
Port 22保存之后,即可用
ssh mac实现远程登录了,scp同样可以使用
5.6 scp 命令
- scp 就是
secure copy,是一个在Linux下用来进行远程拷贝文件的命令 - 它的地址格式与ssh 基本相同,需要注意的是,在指定端口时用的是大写的
-P而非小写
| 把本地当前目录下的 01.py 文件复制到远程家目录下的 Desktop/01.py: 注意:':'后面的路径如果不是绝对路径,则以用户家目录作为参照路径 scp -P port 01.py user@remote:Desktop/01.py 把远程家目录下的 Desktop/01.py 文件复制到本地当前目录下的 01.py: scp -P port user@remote:Desktop/01.py 01.py 加上 -r 选项可以传送文件夹 把当前目录下的 demo 文件夹复制到远程家目录下的 Desktop: scp -r demo user@remote:Desktop 把远程家目录下的 Desktop 复制到当前目录下的 demo 文件夹: scp -r user@remote:Desktop demo |
scp这个终端命令一般在Linux 或者Unix 系统下使用如果在Windows 系统中,可以安装putty,使用
pscp命令行工具或者安装FileZilla使用FTP 进行文件传输如果Windows 下的路径存在中文,则会导致
scp命令复制失败,原因未明FileZilla
官方网站:https://www.filezilla.cn/download/client
FileZilla在传输文件时,使用的是FTP 服务而不是SSH 服务。因此端口号应该设置为21
6 用户权限相关命令
6.1 用户和权限的基本概念
基本概念
用户是Linux 系统工作中重要的一环,用户管理包括用户与组管理
在Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且针对不同的系统资源拥有不同的使用权限
在Linux中,可以指定每一个用户针对不同文件或者目录的不同权限
对文件/目录的权限包括:
序号 权限 英文 缩写 数字代号 01 读 read r 4 02 写 write w 2 03 执行 excute x 1 在实际应用中,可以预先针对组设置好权限,然后将不同的用户添加到对应的组中,从而不用依次为每一个用户设置权限
6.2 ls-l 用户权限信息解释
ls -l查看的文件详细信息从左到右为:- 权限(第一个字符如果是d 表示目录)
- 硬连接数(通俗的讲,就是有多少种方式,可以访问到当前的目录/文件)
- 拥有者(家目录下文件/目录的拥有者通常都是当前用户)
- 组(很多时候会出现组名和用户名相同的情况)
- 大小
- 时间
- 名称
6.3 修改文件权限
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | chown | 修改拥有者 |
| 02 | chgrp | 修改组 |
| 03 | chmod | 修改权限 |
chmod 命令
chmod可以修改用户/组对文件/目录的权限命令格式如下:
直接修改文件|目录的 读|写|执行 权限,但是不能精确到 拥有者|组|其他:
chmod +/-rwx 文件名|目录名
递归修改文件权限,三个数字分别对应拥有者|组|其他 用户的权限:
chomod -R 755 文件名|目录名
6.4 超级用户
- Linux 系统中的
root账号通常用于系统的维护和管理,对操作系统的所有资源具有所有访问权限 - 在大多数版本Linux 系统中,都不推荐直接使用root 账号登录系统
- 在Linux 安装的过程中,系统会自动创建一个用户账号,而这个默认的用户就称为“标准用户”
sudo 命令
su是substitute user 的缩写,表示使用另一个用户的身份sudo命令用来以其他身份来执行命令,预设的身份为root用户使用
sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码
若未经授权的用户企图使用
sudo,则会发出警告邮件给管理员
7 组管理终端命令
创建组/删除组的终端命令都需要通过
sudo执行
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | groupadd 组名 | 添加组 |
| 02 | groupdel 组名 | 删除组 |
| 03 | cat /etc/group | 确认组信息 |
| 04 | chgrp -R 组名 文件/目录名 | 递归修改文件/目录的所属组 |
- 组信息保存在
/etc/group文件中/etc目录是专门用来保存系统配置信息的目录- 在实际应用中,可以预先针对组设置好权限,然后将不同的用户添加到对应的组中,从而不用依次为每个用户设置权限
8 用户管理终端命令
8.1 创建用户/设置密码/删除用户
| 序号 | 命令 | 作用 | 说明 |
|---|---|---|---|
| 01 | useradd -m -g 组名 新建用户名 | 添加新用户 | -m 自动建立家目录 -g 指定用户所在的组,否则会建立一个和用户同名的组 |
| 02 | passwd 用户名 | 设置用户密码 | 如果是普通用户,直接用passwd 可以修改自己的密码 |
| 03 | userdel -r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
| 04 | cat/etc/passwd | grep 用户名 | 确认用户信息 | 新建用户后。用户信息会保存在/etc/passwd 文件中 |
- 创建用户时,如果忘记
-m选项指定新用户的家目录,最简单的方法是删除用户重新创建。- 创建用户时,默认会创建一个和用户名同名的组名
- 用户信息保存在
/etc/passwd文件中
8.2 查看用户信息
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | id [用户名] | 查看用户UID 和GID 信息 |
| 02 | who | 查看当前所有登录的用户列表 |
| 03 | whoami | 查看当前登录用户的账户名 |
passwd 文件
etc/passwd文件存放的是用户信息,由6个分号组成的7个信息,分别是:
- 用户名
- 密码(x,表示加密的密码)
- UID(用户标识)
- GID(组标识)
- 用户全名或本地账号
- 家目录
- 登录使用的Shell,就是登陆之后,使用终端命令,Ubuntu 默认是
dash
usermod 命令
usermod可以用来设置用户的主组/附加组和登录Shell,命令格式如下:- 主组:通常在新建用户时指定,在
etc/passwd的第四列GID 对应的组 - 附加组:在
etc/group中最后一列表示该组的用户列表,用于指定用户的附加权限
设置用户的附加组之后,需要重新登录才能生效
| 修改用户的主组(passwd 中的GID): usermod -g 组 用户名 修改用户的附加组: usermod -G 组 用户名 修改用户登录 Shell: usermod -s /bin/bash |
默认使用
useradd添加的用户是没有权限使用sudo以root身份执行命令的,可以使用一下命令,将用户添加到sudo附加组中
| usermod -G sudo 用户名 |
which 命令
/etc/passwd是用于保存用户信息的文件
/usr/bin/passwd是用于修改用户密码的程序
which命令可以查看执行命令所在位置,例如:
| which is 输出: /bin/ls which useradd 输出: /usr/sbin/useradd |
bin 和sbin
- 在Linux 中,绝大多数可执行文件都是保存在
/bin、/sbin、/usr/bin、usr/sbin /bin(binary)是二进制执行文件目录,主要用于具体应用/sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理/usr/bin(user commands for applications)后期安装的一些软件/usr/sbin(super user commands for application)超级用户的一些管理程序
cd这个终端命令是内置在系统内核中的,没有独立的文件,因此用which无法找到cd命令位的置
8.3 切换用户
| 序号 | 命令 | 作用 | 说明 |
|---|---|---|---|
| 01 | su -用户名 | 切换用户,并且切换目录 | -可以切换到用户目录,否则保持不变 |
| 02 | exit | 退出当前登录账户 | 会返回上一次调用su命令的用户 |
su不接用户名,可以切换到root,但是不推荐使用,因为不安全
9 系统信息相关命令
9.1 时间和日期
| 序号 | 命令 | 日期 |
|---|---|---|
| 01 | date | 查看系统时间 |
| 02 | cal | calender 查看日历,-y 选项可以查看一年的日历 |
9.2 磁盘信息
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | df -h | disk free 显示磁盘剩余空间 |
| 02 | du -h [目录名] | disk usage 显示目录下的文件大小 |
-h以人性化的方式显示文件大小
9.3 进程信息
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | ps aux | process status 查看进程的详细状况 |
| 02 | top | 动态显示运行中的进程并且排序 |
| 03 | kill [-9] 进程代号 | 终止制定代号的进程,-9 表示强行终止 |
ps选项控制:
| 选项 | 含义 |
|---|---|
| a | 显示终端上的所有进程,包括其他用户的进程 |
| u | 显示进程的详细状态 |
| x | 显示没有控制终端的进程 |
ps默认只会显示当前用户通过终端启动的应用程序- 要退出
top可以直接输入q- 使用
kill命令时,最好只终止由当前用户开启的进程,而不要终止root身份开启的进程,否则可能导致系统崩溃
10 其他命令
10.1 find 命令
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | find [路径] -name “*.py” | 查找指定路径下扩展名是.py 的文件,包括子目录 |
- 如果省略路径,表示在当前文件夹下查找
- 之前学习的通配符,在使用
find命令时同时可用
10.2 ln 命令
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | ln -s 被连接的源文件 链接文件 | 类似于Windows创建快捷方式 |
- 没有
-s选项建立的是一个硬链接文件。两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接- 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动连接文件,仍能够正常使用
10.3 tar 命令
tar是 Linux 中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,也可以吧一个打包的大文件恢复成一系列文件命令格式如下:
打包文件:
tar -cvf 打包文件.tar 被打包的文件/路径...
解包文件:
tar -xvf 打包文件.tar
tar选项说明:
| 选项 | 含义 |
|---|---|
| c | 生成档案文件,创建打包文件 |
| x | 解开档案文件 |
| v | 列出归档解档的详细过程,显示进度 |
| f | 指定档案文件名称,f 后面一定是.tar 文件,所以必须放选项最后 |
10.4 gzip 命令
tar与gzip命令结合可以实现文件打包和压缩tar只负责打包文件,但不压缩- 用
gzip压缩tar打包后的文件,其扩展名一般用xxx.tar.gz
在
tar命令中有一个选项-z 可以调用gzip,从而可以方便实现压缩和解压缩的功能命令格式如下:
压缩文件:
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径...
解压缩文件:
tar -zxvf 打包文件.tar.gz
解压缩到制定路径:
tar -zxvf 打包文件.tar.gz -C 目标路径
使用-C 选项时,要解压缩的目录必须存在
10.5 bzip(two) 命令
tar与bzip2命令结合可以实现与gzip命令相同的功能- 用
bzip2压缩tar打包后的文件,其扩展名一般用xxx.tar.bz2
- 用
在
tar命令中只有一个选项-j可以调用bzip2,从而可以方便实现压缩和解压缩的功能命令格式如下:
压缩文件:
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径...
解压缩文件:
tar -jxvf 打包文件.tar.bz2
10.6 apt 命令
apt是Advanced Packing Tool,是Linux 下的一款安装包管理工具可以在终端方便的安装/卸载/更新软件包
命令格式如下:
安装软件:
sudo apt install 软件包
卸载软件:
sudo apt remove 软件名
更新已安装的包:
sudo apt upgrade
5 查询命令帮助
5.1 –help
| command --help |
说明:
- 显示
command命令的帮助信息
5.2 man
| man command |
说明:
- 查询
command命令的使用手册
man是manual的缩写,是Linux 提供的一个手册,包含了绝大部分的命令、函数的详细使用说明
| 操作键 | 功能 |
|---|---|
| 空格键 | 显示手册页的下一屏 |
| Enter键 | 一次滚动手册页的一行 |
| b | 回滚一屏 |
| f | 前滚一屏 |
| q | 退出 |
| /word | 搜索word 字符串 |
6 终端快捷键
6.1 自动补全
- 在敲出
文件/目录/命令的前几个字母后,按下tab键:- 如果无歧义,系统会自动补全
- 如果存在其他
文件/目录/命令,再按一下tab键,系统会提示可能存在的命令
6.2 曾经使用过的命令
- 按
上/下光标键可以在曾经使用过的命令之间来回切换 - 如果想要退出选择,并不想执行当前选中的命令,可以按
ctrl+c
87

