一.常用 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 |
清屏 |
小技巧
ctrl + shift + =
放大终端窗口的字体显示
ctrl + -
缩小终端窗口的字体显示
自动补全
- 在敲出
文件
/目录
/命令
的前几个字母之后,按下 tab
键
- 如果输入的没有歧义,系统会自动补全
- 如果还存在其他
文件
/目录
/命令
,再按一下 tab
键,系统会提示可能存在的命令
小技巧
- 按
上
/下
光标键可以在曾经使用过的命令之间来回切换
- 如果想要退出选择,并且不想执行当前选中的命令,可以按
ctrl + c
二 .创建、删除、操作
1.touch
-
- 创建文件或修改文件时间
- 如果文件 不存在,可以创建一个空白文件
- 如果文件 已经存在,可以修改文件的末次修改日期
2.mkdir
新建目录的名称 不能与当前目录中 已有的目录或文件 同名
3.rm
使用 rm
命令要小心,因为文件删除后不能恢复
选项 | 含义 |
-f |
强制删除,忽略不存在的文件,无需提示 |
-r |
递归地删除目录下的内容,删除文件夹 时必须加此参数 |
4.拷贝和移动文件
序号 | 命令 | 对应英文 | 作用 |
01 |
tree [目录名] |
tree |
以树状图列出文件目录结构 |
02 |
cp 源文件 目标文件 |
copy |
复制文件或者目录 |
03 |
mv 源文件 目标文件 |
move |
移动文件或者目录/文件或者目录重命名 |
5.tree
6.cp
-
cp
命令的功能是将给出的 文件 或 目录 复制到另一个 文件 或 目录 中,相当于 DOS 下的 copy
命令
选项 | 含义 |
-i |
覆盖文件前提示 |
-r |
若给出的源文件是目录文件,则 cp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 |
7.mv
-
mv
命令可以用来 移动 文件 或 目录,也可以给 文件或目录重命名
8.查看文件内容
序号 | 命令 | 对应英文 | 作用 |
01 |
cat 文件名 |
concatenate |
查看文件内容、创建文件、文件合并、追加文件内容等功能 |
02 |
more 文件名 |
more |
分屏显示文件内容 |
03 |
grep 搜索文本 文件名 |
grep |
搜索文本文件内容 |
9.cat
-
cat
命令可以用来 查看文件内容、创建文件、文件合并、追加文件内容 等功能
cat
会一次显示所有的内容,适合 查看内容较少 的文本文件
选项 | 含义 |
-b |
对非空输出行编号 |
-n |
对输出的所有行编号 |
10.more
-
more
命令可以用于分屏显示文件内容,每次只显示一页内容
- 适合于 查看内容较多的文本文件
使用 more
的操作键:
操作键 | 功能 |
空格键 |
显示手册页的下一屏 |
Enter 键 |
一次滚动手册页的一行 |
b |
回滚一屏 |
f |
前滚一屏 |
q |
退出 |
/word |
搜索 word 字符串 |
11.grep
-
- Linux 系统中
grep
命令是一种强大的文本搜索工具
grep
允许对文本文件进行 模式查找,所谓模式查找,又被称为正则表达式,在就业班会详细讲解
选项 | 含义 |
-n |
显示匹配行及行号 |
-v |
显示不包含匹配文本的所有行(相当于求反) |
-i |
忽略大小写 |
参数 | 含义 |
^a |
行首,搜寻以 a 开头的行 |
ke$ |
行尾,搜寻以 ke 结束的行 |
12.其他
echo 文字内容
-
-
echo
会在终端中显示参数指定的文字,通常会和 重定向 联合使用
重定向 >
和 >>
-
-
- Linux 允许将命令执行结果 重定向到一个 文件
- 将本应显示在终端上的内容 输出/追加 到指定文件中
其中
-
-
>
表示输出,会覆盖文件原有的内容
>>
表示追加,会将内容追加到已有文件的末尾
管道 |
-
- Linux 允许将 一个命令的输出 可以通过管道 做为 另一个命令的输入
- 可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里
|
的左右分为两端,左端塞东西(写),右端取东西(读)
常用的管道命令有:
-
more
:分屏显示内容
grep
:在命令执行结果的基础上查询指定的文本
选项 | 含义 |
c |
生成档案文件,创建打包文件 |
x |
解开档案文件 |
v |
列出归档解档的详细过程,显示进度 |
f |
指定档案文件名称,f 后面一定是 .tar 文件,所以必须放选项最后 |
五.SSH 客户端的简单使用
ssh [-p port] user@remote
-
user
是在远程机器上的用户名,如果不指定的话默认为当前用户
remote
是远程机器的地址,可以是 IP/域名,或者是 后面会提到的别名
port
是 SSH Server 监听的端口,如果不指定,就为默认值 22
提示:
注意:
ssh
这个终端命令只能在 Linux
或者 UNIX
系统下使用
- 如果在
Windows
系统中,可以安装 PuTTY
或者 XShell
客户端软件即可
提示:
- 在工作中,SSH 服务器的端口号很有可能不是 22,如果遇到这种情况就需要使用
-p
选项,指定正确的端口号,否则无法正常连接到服务器
远程登录和复制文件
序号 | 命令 | 对应英文 | 作用 |
01 |
ssh 用户名@ip |
secure shell |
关机/重新启动 |
02 |
scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 |
secure copy |
远程复制文件 |
六.用户管理 终端命令
提示:创建用户 / 删除用户 / 修改其他用户密码 的终端命令都需要通过 sudo
执行
1 创建用户/设置密码/删除用户
序号 | 命令 | 作用 | 说明 |
01 |
useradd -m -g 组 新建用户名 |
添加新用户 |
- -m 自动建立用户家目录
- -g 指定用户所在的组,否则会建立一个和同名的组
|
02 |
passwd 用户名 |
设置用户密码 |
如果是普通用户,直接用 passwd 可以修改自己的账户密码 |
03 |
userdel -r 用户名 |
删除用户 |
-r 选项会自动删除用户家目录 |
04 |
cat /etc/passwd |
grep 用户名 |
确认用户信息 |
新建用户后,用户信息会保存在 /etc/passwd 文件中 |
提示:
-
- 创建用户时,如果忘记添加
-m
选项指定新用户的家目录 —— 最简单的方法就是删除用户,重新创建
- 创建用户时,默认会创建一个和用户名同名的组名
- 用户信息保存在
/etc/passwd
文件中
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
的第 4 列 GID 对应的组
- 附加组:在
etc/group
中最后一列表示该组的用户列表,用于指定 用户的附加权限
提示:设置了用户的附加组之后,需要重新登录才能生效!
注意:默认使用 useradd
添加的用户是没有权限使用 sudo
以 root
身份执行命令的,可以使用以下命令,将用户添加到 sudo
附加组中
usermod -G sudo 用户名
which(重要)
提示
-
/etc/passwd
是用于保存用户信息的文件
/usr/bin/passwd
是用于修改用户密码的程序
which ls
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 applications
)超级用户的一些管理程序
提示:
-
cd
这个终端命令是内置在系统内核中的,没有独立的文件,因此用 which
无法找到 cd
命令的位置
3 切换用户
序号 | 命令 | 作用 | 说明 |
01 |
su - 用户名 |
切换用户,并且切换目录 |
- 可以切换到用户家目录,否则保持位置不变 |
02 |
exit |
退出当前登录账户 |
-
su
不接用户名,可以切换到 root
,但是不推荐使用,因为不安全
4 修改文件权限
序号 | 命令 | 作用 |
01 |
chown |
修改拥有者 |
02 |
chgrp |
修改组 |
03 |
chmod |
修改权限 |
-
chmod
在设置权限时,可以简单地使用三个数字分别对应 拥有者 / 组 和 其他 用户的权限
-
- 常见数字组合有(
u
表示用户/g
表示组/o
表示其他):
777
===> u=rwx,g=rwx,o=rwx
755
===> u=rwx,g=rx,o=rx
644
===> u=rw,g=r,o=r
系统信息相关命令
1. 时间和日期
序号 | 命令 | 作用 |
01 |
date |
查看系统时间 |
02 |
cal |
calendar 查看日历,-y 选项可以查看一年的日历 |
02. 磁盘信息
序号 | 命令 | 作用 |
01 |
df -h |
disk free 显示磁盘剩余空间 |
02 |
du -h [目录名] |
disk usage 显示目录下的文件大小 |
03. 进程信息
序号 | 命令 | 作用 |
01 |
ps aux |
process status 查看进程的详细状况 |
02 |
top |
动态显示运行中的进程并且排序 |
03 |
kill [-9] 进程代号 |
终止指定代号的进程,-9 表示强行终止 |
ps
默认只会显示当前用户通过终端启动的应用程序
选项 | 含义 |
a |
显示终端上的所有进程,包括其他用户的进程 |
u |
显示进程的详细状态 |
x |
显示没有控制终端的进程 |
提示:使用 kill
命令时,最好只终止由当前用户开启的进程,而不要终止 root
身份开启的进程,否则可能导致系统崩溃