关于 Linux 你需要了解的 x 个基本命令
使用 Linux 绕不开命令行,而记忆命令就像背单词,是绕不过的基本功。
本文的目的是精挑细选,保留常见命令中的一个最小命令集,只提供其中使用频率最高的用法,原则是如无必要,勿增实体,在足够应对日常工作的前提下,尽可能地减小记忆负担。
例如,删除一个目录,可以使用
rm -rf
,也可以使用rmdir
,后者在这种情况下就是多余的。
你可以通过两种方法阅读本篇文章:
- 作为教材:按照顺序从头往下逐个学习,或者按照场景分类进行学习。
- 作为手册:使用
Ctrl+F
搜索需要查询的命令。
由于工作原因,笔者暂时无法一次性完成整篇文章,但会坚持至少一天更新一个命令,请大家监督 :-)
如果你对于命令的选取有疑问或有更好的见解,请在文章末尾留言。
查询与帮助命令
man
man
是 manual 的简称,当用户需要查看某个命令的参数时,只需要执行 man
即可获取相关资料(当然你也可以通过 man man
来查看 man
命令的用法)。
man 手册可分为以下 9 种类型:
- 标准用户命令(Executable programs or shell commands)
- 系统调用(System Calls)
- 库调用(Library Calls)
- 特殊文件访问入口(Special files)
- 文件格式约定(File formats and conventions)
- 游戏(Games)
- 杂项(Miscellaneous)
- 系统管理命令(System administration commands)
- 内核相关文件(Kernel routines)
举例说明,read
既是系统调用,又是 bash 命令,查看 man 手册的时候需要作区分:
1 | man 1 read # 查看作为命令的read |
如果不确定应该打开哪一类 man 手册,可以先通过 whatis
命令查询关键字:
1 | whatis read |
man 手册通常包括以下章节:
- NAME:命令名称和一句话简要描述
- SYNOPSIS:列出命令的所有可用选项
- EXAMPLES:常见用法举例
- DESCRIPTION:概念介绍
- OPTIONS:对命令参数的详细说明
- EXIT STATUS:返回状态码说明
- ENVIRONMENT:涉及的环境变量
- FILES:相关文件(通常是配置文件)
- AUTHOR:作者署名
- SEE ALSO:更多参考资料
下面是 man 手册的使用方法:
- 翻页
- 向后翻一行:Enter(回车)
- 向前翻一行:k
- 向后翻一页:space(空格)
- 向前翻一页:b
- 查找
- 向后搜索关键词:/KEYWORD
- 向前搜索关键词:?KEYWORD
- 跳转到下个关键词:n
- 跳转到上个关键词:N
- 退出:q
info
help
内置命令
echo
rpm
yum / dnf
dpkg
dpkg 是 Debian 类 Linux 发行版的包管理程序,常见用法包括:
1 | dpkg -i [.deb package name] # 安装软件包 |
apt-get
alias
unalias
time
date
export
关机相关命令
shutdown
halt
poweroff
exit
文件和目录操作命令
ls
cd
cp
find
mkdir
mv
pwd
rename
rm
touch
ln
ln
命令的功能是为文件在另一个位置建立链接,当我们需要在不同目录用到相同的文件时,只要在其中一个目录下存储该文件,然后在其他目录建立对它的链接,从而减少了重复的空间占用。
tree
basename
dirname
chattr
lsattr
file
md5sum
查看文件和内容处理命令
cat
more
less
head
tail
wc
dos2unix
vimdiff
grep
awk
vi / vim
压缩归档命令
tar
unzip
zip
系统状态显示命令
uname
hostname
dmesg
stat
du
df
top
free
文件搜索命令
which
find
whereis
locate
用户管理命令
useradd
userdel
usermod
groupadd
passwd
chage
id
su
最简单的身份切换命令,最常见的用法如下:
1 | su - [username] # 切换到username指定的用户,需要输入新用户的密码 |
要完整地切换到新用户的环境,必须使用 su - username
或 su -l username
,才会连同 PATH、USER、MAIL 等变量都转成新用户的环境。
使用 root 切换成其他用户时,不需要输入新用户的密码。
sudo
whoami
who
w
last
lastlog
users
finger
权限管理命令
chmod
chown
chgrp
umask
网络操作命令
telnet
ssh
scp
wget
ping
route
ifconfig
ifup
ifdown
netstat
ss
磁盘与文件系统命令
mount
umount
fsck
dd
fdisk
性能监控命令
chkconfig
vmstat
mpstat
进程管理命令
kill
killall
ps
pstree
systemctl
- Post title:关于 Linux 你需要了解的 x 个基本命令
- Post author:Anakin
- Create time:2020-11-17 00:15:48
- Post link:https://nettingsisyphus.tech/2020/11/17/linux-basic-commands/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.