Shell 基本操作
前面我们说 Shell 就是“敲命令”,那么既然是命令,那肯定是有格式的,Shell 命令的格式
如下:
command -options [argument]
command: Shell 命令名称。
options:选项,同一种命令可能有不同的选项,不同的选项其实现的功能不同。
argument:Shell 命令是可以带参数的,也可以不带参数运行,即方括号表示可选的。
同样以命令“ls”为例,下面“ls”命令的三种不同格式其结果也不同:
ls
ls –l
ls /usr

常用 Shell 命令

 1、目录信息查看命令 ls
文件浏览是最基本的操作了,Shell 下文件浏览命令为 ls,格式如下:
ls [选项] [路径]
ls 命令主要用于显示指定目录下的内容,列出指定目录下包含的所有的文件以及子目录,
它的主要参数有:
-a 显示所有的文件以及子目录,包括以“.”开头的隐藏文件。
-l 显示文件的详细信息,比如文件的形态、权限、所有者、大小等信息。
-t 将文件按照创建时间排序列出。
-A 和-a 一样,但是不列出“.”(当前目录)和“..”(父目录)。
-R 递归列出所有文件,包括子目录中的文件。
Shell 命令里面的参数是可以组合在一起用的,比如组合“-al”就是显示所有文件的详细信
息,包括以“.”开头的隐藏文件,ls 命令使用如图 2.2.4.1 所示

2、目录切换命令 cd
要想在 Shell 中切换到其它的目录,使用的命令是 cd,命令格式如下:
cd [路径]
路径就是我们要进入的目录路径,比如下面所示操作:
cd / //进入到根目录“/”下,Linux 系统的根目录为“/”,
cd /usr //进入到目录“/usr”里面。
cd .. //进入到上一级目录。
cd ~ //切换到当前用户主目录

3、当前路径显示命令 pwd
pwd 命令用来显示当前工作目录的绝对路径,不需要任何的参数

4、系统信息查看命令 uname
要查看当前系统信息,可以使用命令 uname,命令格式如下:
uname [选项]
可选的选项参数如下:
-r 列出当前系统的具体内核版本号。
-s 列出系统内核名称。
-o 列出系统信息。

5、清屏命令 clear
clear 命令用于清除终端上的所有内容,只留下一行提示符。

6、切换用户执行身份命令 sudo
Ubuntu(Linux)是一个允许多用户的操作系统,其中权限最大的就是超级用户 root,有时候
我们执行一些操作的时候是需要用 root 用户身份才能执行,比如安装软件。通过 sudo 命令可以
使我们暂时将身份切换到 root 用户。当使用 sudo 命令的时候是需要输入密码的,这里要注意输
入密码的时候是没有任何提示的!命令格式如下:
sudo [选项] [命令]
选项主要参数如下:
-h 显示帮助信息。

-l 列出当前用户可执行与不可执行的命令
-p 改变询问密码的提示符。

假如我们现在要创建一个新的用户 test,创建新用户的命令为“adduser”,创建新用户的权
限只有 root 用户才有,我们在装系统的时候创建的那个用户是没有这个权限的,比如我的
“zuozhongkai”用户。所以创建新用户的话需要使用“sudo”命令以 root 用户执行“adduser”
这个命令

7、添加用户命令 adduser

8、删除用户命令 deluser

9、切换用户命令 su
前面在讲解命令“sudo”的时候说过,“sudo”是以 root 用户身份执行一个命令,并没有更
改当前的用户身份,所有需要 root 身份执行的命令都必须在前面加上“sudo”。命令“su”可以
直接将当前用户切换为 root 用户,切换到 root 用户以后就可以尽情的进行任何操作了!因为你
已经获得了系统最高权限,在 root 用户下,所有的命令都可以无障碍执行,不需要在前面加上
“sudo”,“su”命令格式如下:
su [选项] [用户名]
常用选项参数如下:
-c –command 执行指定的命令,执行完毕以后恢复原用户身份。
-login 改变用户身份,同时改变工作目录和 PATH 环境变量。
-m 改变用户身份的时候不改变环境变量
-h 显示帮助信息

注意!!由于 root 用户权限太大,稍微不注意就可能删除掉系统文件,导致系统奔溃,因此
强烈建议大家,不要以 root 用户运行 Ubuntu。当要用到 root 身份执行某些命令的时候使用“sudo”
命令即可。

10、显示文件内容命令 cat

查看文件内容是最常见的操作了,在 windows 下可以直接使用记事本查看一个文本文件内
容,linux 下也有类似记事本的软件,叫做 gedit,找到一个文本文件,双击打开,默认使用的就
是 gedit

我们现在讲解的是 Shell 命令,那么 Shell 下有没有办法读取文件的内容呢?肯定有的,那
就是命令“cat”,命令格式如下:
cat [选项] [文件]
选项主要参数如下:
-n 由 1 开始对所有输出的行进行编号。
-b 和-n 类似,但是不对空白行编号。
-s 当遇到连续两个行以上空白行的话就合并为一个行空白行。

11、显示和配置网络属性命令 ifconfig
ifconfig 是一个跟网络属性配置和显示密切相关的命令,通过此命令我们可以查看当前网络
属性,也可以通过此命令配置网络属性,比如设置网络 IP 地址等等,此命令格式如下:
ifconfig interface options | address
主要参数如下:
interface 网络接口名称,比如 eth0 等。
up 开启网络设备。
down 关闭网络设备。
add IP 地址,设置网络 IP 地址。

netmask add 子网掩码。

12、系统帮助命令 man

man [命令名]
比如我们要查看命令“ifconfig”的说明,输入“man ifconfig”即可

13、 系统重启命令 reboot

14、系统关闭命令 poweroff
使用命令“reboot”可以重启系统,使用命令“poweroff”就可以关闭系统,在终端中输入
命令“poweroff”然后按下回车键即可关闭 Ubuntu 系统

15、软件安装命令 install
截至目前,我们都没有讲过 Ubuntu 下如何安装软件,因为 Ubuntu 安装软件不像 Windows
下那样,直接双击.exe 文件就开始安装了。Ubuntu 下很多软件是需要先自行下载源码,下载源码以后自行编译,编译完成以后使用命令“intsall”来安装。当然 Ubuntu 下也有其它的软件安
装方法,但是用的最多的就是自行编译源码然后安装,尤其是嵌入式 Linux 开发。命令“install”
格式如下:

install [选项]... [-T] 源文件 目标文件
或:install [选项]... 源文件... 目录
或:install [选项]... -t 目录 源文件...
或:install [选项]... -d 目录...
“install”命令是将文件(通常是编译后的文件)复制到目的位置,在前三种形式中,将源文
件复制到目标文件或将多个源文件复制到一个已存在的目录中同时设置其所有权和权限模式。
在第四种形式会创建指定的目录。命令“install”通常和命令“apt-get”组合在一起使用的,关
于“apt-get”命令我们稍后会讲解。
以上就是 Shell 最基本一些命令,还有一些其它的命令我们在后面在讲解,循序渐进嘛。

APT 下载工具
对于长时间使用Windows的我们,下载安装软件非常容易,Windows下有很多的下载软件,
Ubuntu 同样有不少的下载软件,本节我们讲解 Ubuntu 下我们用的最多的下载工具:APT 下载
工具,APT 下载工具可以实现软件自动下载、配置、安装二进制或者源码的功能。APT 下载工
具和我们前面讲解的“install”命令结合在一起构成了 Ubuntu 下最常用的下载和安装软件方法。
它解决了 Linux 平台下安装软件的一个缺陷,即软件之间相互依赖。
APT 采用的 C/S 模式,也就是客户端/服务器模式,我们的 PC 机作为客户端,当需要下载
软件的时候就向服务器请求,因此我们需要知道服务器的地址,也叫做安装源或者更新源。打
开系统设置,打开“软件和更新”设置,打开以后如图 2.4.1.1 所示:

图 2.4.1.1 软件和更新设置
在图 2.4.1.1 中的“Ubuntu 软件”选项卡下面的“下载自”就是 APT 工具的安装源,因为我们是在中国,所以需要选择中国的服务器,否则的话可能会导致下载失败!这个也就是网上
说的 Ubuntu 安装成功以后要更新源。
在我们使用 APT 工具下载安装或者更新软件的时候,首先会在下载列表中与本机软件对
比,看一下需要下载哪些软件,或者升级哪些软件,默认情况下 APT 会下载最新的软件包,被
安装的软件包所依赖的其它软件也会被下载安装。说了这么多,APT 下载工具究竟怎么用呢?
APT 工具常用的命令如下:

1、更新本地数据库

如果想查看本地哪些软件可以更新的话可以使用如下命令:
sudo apt-get update
这个命令会访问源地址,并且获取软件列表并保存在本电脑上

2、检查依赖关系
有时候本地某些软件可能存在依赖关系,所谓依赖关系就是 A 软件依赖于 B 软件。通过如
下命令可以查看依赖关系,如果存在依赖关系的话 APT 会提出解决方案:
sudo apt-get check

3、软件安装
这个是重点了,安装软件,使用如下命令:
sudo apt-get install package-name
可以看出上述命令是由“apt-get”和“install”组合在一起的,“package-name”就是要安装
的软件名字,“apt-get”负责下载软件,“install”负责安装软件。比如我们要安装软件 Ubuntu 下
的串口工具“minicom”,我们就可以使用如下命令:
sudo apt-get install minicom

4、软件更新

有时候我们需要更新软件,更新软件的话使用命令:
sudo apt-get upgrade package-name
其中 package-name 为要升级的软件名字

5、卸载软件
如果要卸载某个软件的话使用如下命令:
sudo apt-get remove package-name

Ubuntu 下文本编辑
2.5.1 Gedit 编辑器
进行文本编辑是最常用的操作,Windows 下我们会使用记事本来完成,或者其它一些优秀
的文本编辑器,比如 notepad++,Ubuntu 下有一个自带的文本编辑器,那就是 Gedit。Gedit 是
一个窗口式的编辑器,关于 Gedit 的使用前面我们已经讲解了。本节我们重点讲解的是另外一个编辑器:VI/VIM 编辑器。
2.5.2 VI/VIM 编辑器
我们如果要在终端模式下进行文本编辑或者修改文件就可以使用 VI/VIM 编辑器,Ubuntu
自带了 VI 编辑器,但是 VI 编辑器对于习惯了 Windows 下进行开发的人来说不方便,比如竟然
不能使用键盘上的上下左右键调整光标位置。因此我推荐大家使用 VIM 编辑器,VIM 编辑器
是 VI 编辑器升级版本
,VI/VIM 编辑器都是一种基于指令式的编辑器,不需要鼠标,也没有菜
单,仅仅使用键盘来完成所有的编辑工作。
我们需要先安装 VIM 编辑器,命令如下:
sudo apt-get install vim
安装完成以后就可以使用 VIM 编辑器了,VIM 编辑器有 3 种工作模式:输入模式指令
模式
底行模式,通过切换不同的模式可以完成不同的功能,我们就以编辑一个文本文档为例
讲解 VIM 编辑器的使用。

输入命令:vi test.txt,就会创建一个 test.txt 文档,并且用 VIM 打开了

因为 VIM
默认是以只读模式打开的文档,因此我们要切换到输入模式,切换到输入模式的命令如下:
i 在当前光标所在字符的前面,转为输入模式。
I 在当前光标所在行的行首转换为输入模式。
a 在当前光标所在字符的后面,转为输入模式。
A 在光标所在行的行尾,转换为输入模式。
o 在当前光标所在行的下方,新建一行,并转为输入模式。
O 在当前光标所在行的上方,新建一行,并转为输入模式。
s 删除光标所在字符。
r 替换光标处字符。

最常用的就是“a”,我们在图 2.5.2.2 中按下键盘上的“a”键,这时候终端左下角会提示
“插入”字样,表示我们进入到了输入模式我们输入完成以后需要保存文本
啊,Windows 下的记事本可以使用快捷键 Ctrl+S 来保存,VIM 是否也可以使用 Ctrl+S 来保存
呢?你会发现当你按下 Ctrl+S 键以后你的终端不能操作了!!!这是因为在 Ubuntu 下 Ctrl+S 快
捷键不是用来完成保存的功能的,而是暂停该终端!所以你一旦在使用终端的时候按下 Ctrl+S
快捷键,那么你的终端肯定不会再有任何反应,如果你按下 Ctrl+S 关闭了当前终端的话可以按
下 Ctrl+Q 来重新打开终端。
既然 Ctrl+S 不能保存文本文档,那么有没有其它方法保存文本文档呢?肯定是有的,我们
需要从 VIM 现在的输入模式切换到指令模式,方式就是按下键盘的 ESC 键,按下 ESC 键以后
终端坐下角的“插入”字样就会消失,此时你就不能在输入任何文本了,如果想再次输入文本
的话就按下“a”键重新进入到输入模式。指令模式顾名思义就是输入指令的模式,这些指令是控制文本的指令,我们将这些指令进行分类,如下所示:

总之:

vim默认是浏览模式,

输入:i,转为插入模式,按下esc,退出为浏览模式

输入冒号:,转为命令模式,输入w,文件写入,q退出

shell中,打开了一个程序,命令行就陷进去了,需要按ctrl+c,来终止该程序,退出到shell中来

 

1、移动光标指令:
h(或左方向键) 光标左移一个字符。
l(或右方向键) 光标右移一个字符。
j(或下方向键) 光标下移一行。
k(或上方向键) 光标上移一行。
nG 光标移动到第 n 行首。
n+ 光标下移 n 行。
n- 光标上移 n 行。
2、屏幕翻滚指令
Ctrl+f 屏幕向下翻一页,相当于下一页。
Ctrl+b 屏幕向上翻一页,相当于上一页。
3、复制、删除和粘贴指令
cc 删除整行,并且修改整行内容。
dd 删除该行,不提供修改功能。
ndd 删除当前行向下 n 行。
x 删除光标所在的字符。
X 删除光标前面的一个字符。
nyy 复制当前行及其下面 n 行。
p 粘贴最近复制的内容。
上面就是 VI/VIM 的命令模式下最常用的一些命令

从上面的命令可以看出,并没有保存文本的命令,那是因为保存文
档的命令是在底行模式中,我们要先进入到指令模式,进入底行模式的方式是先进入指令模式
下,然后在指令模式下输入“:”进入底行模式

当进入底行模式以后会在终端的左下角就会出现符号“:”,我们可以在“:”
后面输入命令,常用的命令如下:


x 保存当前文档并且退出。
q 退出。
w 保存文档。
q! 退出 VI/VIM,不保存文档。
如果我们要退出并保存文本的话需要在“:”底行模式下输入“wq”

更多推荐

Linux命令行使用常识