在Ubuntu系统中,掌握一些基础的Linux命令对于日常使用和系统管理至关重要。以下是一些常见的Ubuntu指令及其用法汇总。
基础指令
指令名 | 选项 | 参数 | 帮助 |
---|---|---|---|
ls | -a<br>-l<br>-h | / | ls --help |
pwd | pwd --help | ||
cd | ~<br>-<br>.. | cd --help | |
mkdir | -p | mkdir --help | |
rmdir | rmdir --help | ||
touch | touch --help | ||
rm | -r<br>-f | rm --help |
ls
-a
: 显示所有的文件信息(包含隐藏文件)-l
: 以列表形式展示详细信息-h
: 文件大小可读性更强
ls
命令是 Linux 和 Unix 系统中用于列出目录内容的最基本命令使用 ls
命令时,你还可以直接在其后指定目录路径来列出特定目录的内容,例如: ls/path/to/directory
。如果指定了文件或目录名作为参数,ls
将只列出这些指定的文件和目录。
pwd
- 显示当前路径
pwd
- 显示逻辑当前工作目录
pwd -l
cd
- 更改路径
cd ~
: 回到家目录cd -
: 回到上次所在路径cd ..
: 回到父级路径
mkdir
- 创建文件夹
mkdir filename #也可以在已经存在的文件夹下方创建文件 mkdir filename1/filename2/...
-p
: 创建多级文件夹# 创建多级文件夹,文件路径不存在则创建完整的文件路径,如果存在部分路径在此基础上创建新路径 mkdir -p filename1/filename2/...
rmdir
- 删除文件夹
rmdir filename
touch
- 创建文件
# 创建一个文件,没有后缀创建不成功 touch filename+后缀
rm
- 删除文件
- 选项
-r
: 递归删除# 递归删除,当filename文件夹下方还有文件/文件夹时一并删除 ,当然单个删除文件夹/文件都可以 rm -r filename
-f
: 忽略错误# 可以删除文件,但是不能删除文件夹(目录) rm -f filename
- 选项
重定向与查看文件
指令名 | 参数 | 帮助 |
---|---|---|
> | > --help | |
>> | >> --help | |
cat | cat --help | |
head | -n 文件 | head --help |
tail | -n 文件 | tail --help |
more | 文件 | more --help |
wc | -l<br>-w<br>-m<br>-c | wc --help |
重定向
>
: 写入:使用大于符号>
可以将命令的输出写入到一个文件中。如果该文件已存在,使用>
重定向会导致文件内容被新内容覆盖。command > filename
>>
: 追加:使用双大于符号>>
可以将命令的输出追加到现有文件的末尾,而不是覆盖文件。command >> filename
这个命令会将 command
命令的输出追加到filename
文件的末尾。如果 filename
不存在,它将被创建。
其他重定向操作
-
2>
:错误重定向,将错误输出写入到文件./your_script.sh 2> error.log
-
&>
:同时重定向标准输出和错误输出到同一个文件。./your_script.sh &> full_output.log
-
|
和2>&1
:将标准错误重定向到标准输出。./your_script.sh 2>&1 | tee full_output.log
查看文件
cat
: 连接多个文件,将内容输出到屏幕# 将filename.txt内容输出到屏幕上 cat filename.txt # 输出文件的总行数,且将filename.txt内容输出到屏幕上 cat -n filename.txt
- cat > :创建新文件
# 输入此命令之后你可以开始输入文本,输入完毕后按 Ctrl+D 结束输入并创建文件。 cat > filename.txt
- cat:拼接多个文件到一个文件
# filename3不存在则自动创建 cat filename1.txt filename2.txt > filename3.txt
head -n
: 查看文件前n行# 显示 filename.txt 文件的前n行 head -n n filename.txt
tail -n
: 查看文件后n行# 显示 filename.txt 文件的最后n行。 tail -n n filename.txt
more
: 显示文件内容,每次显示一屏幕- 空格:按空格键继续显示下一屏幕的内容。
q
: 按q
键退出more
命令。- 示例:
more filename.txt
逐屏显示filename.txt
文件的内容。
wc
: 文件统计-l
: 行数# 输出filename.txt 的行数 wc -l filename.txt
-w
: 单词数# 输出filename.txt 的单词数 wc -w filename.txt
-m
: 字符数# 输出filename.txt 的字符数 wc -m filename.txt
-c
: 字节数# 输出filename.txt 的字节数 wc -c filename.txt
文件操作
指令名 | 参数 | 帮助 |
---|---|---|
cp | 源文件 目标路径 | cp --help |
mv | 源文件 目标路径 | mv --help |
cp
- 复制+粘贴
cp 源文件 目标路径
cp 源文件 目标路径/新文件名字
cp filename.txt /path/to/filename
mv
- 剪切+粘贴
mv 源文件 目标路径
mv 源文件 目标路径/新文件名字
mv filename.txt /path/to/filename
归档与压缩解压
指令名 | 选项 | 参数 | 帮助 |
---|---|---|---|
tar | -c<br>-x<br>-f<br>-v<br>-t | tar --help | |
gzip | -r<br>-d | gzip --help |
tar
- 归档选项
-c
: 创建归档-x
: 解开归档-f
: 指定归档文件,必须放在最后一个位置-v
: 显示文件详细信息-t
: 列出归档内容
- 示例:
- 创建一个新的归档文件:
tar -cvf archive.tar /path/to/directory
- 列出归档文件的内容:
tar -tvf archive.tar
- 从归档文件中提取文件:
tar -xvf archive.tar
- 创建一个新的归档文件:
gzip
-r
: 压缩gzip -r /path/to/directory
-d
: 解压gzip -d filename.gz
组合使用 tar 和 gzip
tar
和 gzip
经常一起使用,以创建压缩归档文件,这可以通过一个命令完成:
-
创建一个gzip压缩的tar归档文件:
tar -czvf archive.tar.gz /path/to/directory
这里,
-c
表示创建新的归档,-z
表示用gzip压缩,-v
表示显示详细信息,-f
指定归档文件名。 -
解压一个gzip压缩的tar归档文件:
tar -xzvf archive.tar.gz
这里,
-x
表示提取文件,-z
表示用gzip解压,-v
表示显示详细信息,-f
指定归档文件名。
管道与搜索
指令名 | 帮助 |
---|---|
` | |
grep | grep --help |
ps | -e<br>-f |
kill | -9 |
管道 |
- 功能:将左侧命令的输出连接到右侧命令的输入。
ps -ef | grep zzy
这个命令组合使用 ps
和 grep
,首先 ps -ef
列出所有进程,然后 grep zzy
过滤出包含 zzy
的行。
grep
- 以行为单位过滤
grep "error" log.txt
这个命令会在
log.txt
文件中搜索包含 "error" 文本的所有行。
ps
-e
: 显示所有进程ps -e
-f
: 显示进程详细信息ps -f
ps -ef | grep zzy
: 查找特定进程(zzy
)
使用管道 |
和 grep
组合使用,可以过滤出包含特定文本的进程:
ps -ef | grep zzy
kill
使用 kill
命令后跟进程 ID(PID),可以向该进程发送默认的 SIGTERM 信号,请求它正常终止:
kill 1234
- 当进程不响应 SIGTERM 信号时,可以使用
-9
选项发送 SIGKILL 信号: -9
: 杀死进程,清理信息kill -9 1234
查看文件路径与链接
指令名 | 参数 | 帮助 |
---|---|---|
which | which --help | |
ln | -s 源文件 链接文件 | ln --help |
which
/ where
- 查看执行文件路径
which [命令名]
如果文件中存在 【命令名】则输出【命令名】可执行文件的路径
ln
- 链接选项
- 软链接:
ln -s 源文件 链接文件
- 可以链接文件和文件夹
- 相当于创建了快捷方式
- 源文件删除,链接文件废弃
ln -s [源文件或目录] [链接文件或目录]
这在【链接文件或目录】创建一个指向【源文件或目录】的软链接(快捷方式)
- 硬链接:
ln 源文件 链接文件
- 不允许链接目录
- 改一个,其他链接同步更改
- 源文件删除,硬链接文件正常使用
ln [源文件] [链接文件]
这在【链接文件】创建一个指向【源文件】的硬链接(快捷方式)
- 软链接:
用户指令
指令名 | 参数 | 帮助 |
---|---|---|
useradd | -m | useradd --help |
userdel | -r | userdel --help |
groupadd | groupadd --help | |
groupdel | groupdel --help | |
passwd | passwd --help | |
su | su --help | |
whoami | whoami --help | |
exit | exit --help |
新增用户
sudo useradd 用户名
-m
: 自动创建家目录
删除用户
sudo userdel 用户名
-r
: 删除家目录以及邮件池
新增组
sudo groupadd 组名
删除组
sudo groupdel 组名
改密码
sudo passwd
- 更改root密码
sudo passwd 用户名
- 更改指定用户密码
切换用户
su
: 切换到管理员rootsu 用户名
: 切换到指定用户
当前用户
whoami
退出当前用户
exit
: 返回上一个用户,直到退出终端
文件权限
ls -l
: 查看文件权限- 第一个字符: 文件类型
l
: 软连接d
: 文件夹-
: 文件
- 权限: 用数字表示(r:4, w:2, x:1)
- 777: 所有人可读可写可执行
- 750: 当前用户可读可写可执行,组用户可读可执行
- 000: 无任何权限
- 第一个字符: 文件类型
服务操作
指令名 | 参数 | 帮助 |
---|---|---|
systemctl | status<br>stop<br>start<br>restart | ssh |
查看服务状态
systemctl status ssh
停止服务
systemctl stop ssh
启动服务
systemctl start ssh
重启服务
systemctl restart ssh
以上都会提示输入用户密码
文本编辑
指令名 | 帮助 |
---|---|
vim | vim --help |
Vim使用
- 安装:
sudo apt install vim
- 模式:
- 普通模式: 打开文件默认模式
- 插入模式: 按下
i
,I
,o
,O
,a
,A
进入i
: 光标前插入I
: 行首插入a
: 光标后插入A
: 行末插入o
: 另起一行插入O
: 上方另起一行
- 命令模式: 按下
:
进入:q!
: 强制退出:wq
: 保存退出
-
移动光标
gg
: 移动光标到文件的第一行。M
: 移动光标到文件的中间。G
: 移动光标到文件的最后一行。h
: 光标向左移动。j
: 光标向下移动。k
: 光标向上移动。l
: 光标向右移动。
-
删除操作
dd
: 删除当前行。n dd
: 删除指定的 n 行。
D
: 删除从光标到行末的内容。d0
: 删除从光标到行首的内容。
-
复制粘贴
yy
: 复制当前行。n yy
: 复制 n 行。
p
: 粘贴复制的内容。
-
搜索
/
: 进入搜索模式,输入搜索内容。n
: 跳转到下一个匹配项。N
: 跳转到上一个匹配项。
-
命令模式(Command Mode)
- 按下
:
进入命令模式,可以输入命令。:q!
: 强制退出 Vim,不保存更改。:wq
: 保存更改并退出 Vim。
- 按下
-
编辑模式(Edit Mode)
- 按下
Esc
键退出编辑模式,返回普通模式。
- 按下
-
交换文件(Swap Files)
- 当 Vim 非正常关闭时,可能会生成交换文件(以
.
开头的隐藏文件)。 - 这些文件可以用于恢复未保存的更改。
- 也可以直接删除交换文件,但未保存的内容将会丢失。
- 当 Vim 非正常关闭时,可能会生成交换文件(以
此博客汇总了Ubuntu系统中的常见指令,旨在帮助用户快速查找和使用这些命令,无论是进行文件管理、系统监控、文本编辑还是用户管理,都能在这篇汇总中找到所需的答案。