一、文件与目录
ls
list directory contents
基本格式:
ls [-OPTION] [FILE]
ls命令用于查看目录下的内容,可以通过指定[选项]和[参数]来实现具体目录下内容的显示。
例如ls -a可以显示目录下的所有文件,包括隐藏文件。

使用-l选项可以显示文件或者目录的详细信息(文件大小、文件的所有者与所属组、创建时间等)。

mkdir
make directories
基本格式:
mkdir [OPTION] [DIECTORY]
mkdir命令用于创建一个目录。
例如在当前目录下创建一个名为OS的目录:
mkdir OS
使用ls命令确认是否成功创建

cd
change directory
基本格式:
cd [DIRECTORY]
cd命令用于切换目录。
例如切换到OS目录
cd ./OS

用户名后面的目录改变说明已经在OS目录下。
pwd
print name of current/working directory
基本格式:
pwd [OPTION]
一般直接使用pwd显示当前所在的目录

rmdir
remove empty directories
基本格式:
rmdir [OPTION] DIRECTORY
rmdir命令用于删除空目录。
例如,OS目录下没有文件和目录,可以使用rmdir ./OS删除

如果尝试删除一个非空目录,命令报错。

cp
copy files and directories
基本格式:
cp [OPTION]... SOURCE... DIRECTORY
cp命令将源目录或文件拷贝到目的目录。
例如,将OS目录复制到cmake-3.28.0-rc4目录下
cp -r ./OS ./cmake-3.28.0-rc4

mv
move (rename) files
基本格式:
mv [OPTION]... SOURCE... DIRECTORY
mv指令用于移动源文件或目录到目标目录,也可以实现文件或目录的重命名。
例如将OS目录移动到cmake-3.28.0-rc4目录下

考虑以下命令:
mv ./OS ./"Oprating System"
这条指令其实并没有改变目录的位置,而是改变了目录的名称。

目录名带有单引号意味着目录名称里有空格。
rm
remove files or directories
基本格式:
rm [OPTION]... [FILE]...
rm命令用于删除文件或目录。
例如,
rm -r ./"Oprating System"
则会删除Oprating System这个目录

touch
change file timestamps
基本格式:
touch [OPTION]... FILE...
touch命令用于改变文件的时间戳,当文件不存在时,可以创建文件
例如,创建一个名为Linux的文件,在这之前,OS目录下为空。
touch Linux

如果在Linux文件已经存在的情况下,再次执行以上命令,则改变时间戳。

cat
concatenate files and print on the standard output
基本格式:
cat [OPTION]... [FILE]...
cat命令用于显示文件内容。
例如,Linux文件中记录了常用的LInux发行版,可以使用cat命令查看。
cat ./Linux

可以使用-n选项显示行号。

tac
concatenate and print files in reverse
基本格式:
tac [OPTION]... [FILE]...
tac命令用于倒序显示文件内容。

chmod
change file mode bits
基本格式:
chmod [OPTION]... MODE[,MODE]... FILE...
一个文件或着目录的权限可以用ls -l来查看。

可以将权限分为四部分,开头的字母d或者-,其中d表示这是一个目录,-表示这是一个文件。
其余三部分构成相同均由rwx三个字母组成,其中r表示可读,w表示可写,对于文件而言,x表示可执行,对于目录而言,表示可以访问;-表示没有某种权限。第一部分表示所有者的权限,第二部分表示所属组的权限,第三部分表示其他人的权限。
可以通过选项为不同的目标修改不同的权限。
使用+或者-添加或者删除权限:
chmod +x-w ubuntu.txt
为ubuntu.txt文件添加可执行权限x,删除可写权限w.

也可以使用数字的形式,r的值4,w的值为2,x的值为1
例如,要赋予ubuntu.txt文件所有者、所属组、其他人的权限都为可读可写可执行(rwxrwxrwx),可以使用命令
chmod 777 ubuntu.txt

数字的值由权限对应的值的和表示,例如r-x表示为5,rw-表示为6.
二、进程
ps
report a snapshot of the current processes
基本格式:
ps [options]
ps命令用于浏览系统中的进程,能列出系统中运行的进程,包括进程号、命令、CPU使用量、内存使用量等。

pstree
display a tree of processes
基本格式:
pstree [options]
pstree命令可视化的显示进程,通过显示进程的树状图来展示进程间关系。

top
display Linux processes
基本格式:
top -hv|-bcEeHiOSs1 -d secs -n max -u|U user -p pids -o field -w [cols]
top命令的选项可以指定用户、进程号、时间等。该命令可以监视系统中不同的进程所使用的资源。它提供实时的系统状态信息。显示进程的数据包括PID、进程属主、优先级、%CPU、%memory等

nice
run a program with modified scheduling priority
基本格式:
nice [OPTION] [COMMAND [ARG]...]
nice命令可以设置和改变进程的优先级。提高一个进程的优先级,内核会分配更多CPU时间片给这个进程。

使用命令
sudo nice --3 top
将top命令的优先级设置为-3

renice
alter priority of running processes
基本格式:
renice [-n] priority [-g|-p|-u] identifier...
renice命令可以改变正在运行的进程优先值。
kill
Send a signal to processes
基本格式:
kill [-s SIGNAL | --signal SIGNAL | -SIGNAL] PID...
kill命令用于发送信号来结束进程。

三、网络
ifconfig
configure a network interface
基本格式:
ifconfig [-v] [-a] [-s] [interface]
ifconfig [-v] interface [aftype] options | address ...
ifconfig命令用于查看或配置网络接口参数

可以使用ifconfig来修改eth0网卡的ip

route
show / manipulate the IP routing table
基本格式:
route [-v] [-A family |-4|-6] add/del ...
route命令用于查看或配置本机的路由条目

netstat
Print network connections, routing tables, interface statistics, masquerade connections,and multicast memberships
基本格式:
netstat [options]
netstat命令通过指定选项查看本机的网络属性。
例如,使用命令
netstat -u
查看udp连接

ip
show / manipulate routing, network devices, interfaces and tunnels
基本格式:
ip [ OPTIONS ] OBJECT
ip命令用于配置本机的接口状态, 网络参数和路由条目。
四、用户
useradd
create a new user or update default new user information
基本格式:
useradd [options] LOGIN
useradd命令用于添加新的用户账号。
例如,添加一个名为study的帐号
sudo useradd study

passwd
change user password
基本格式:
passwd [options] [LOGIN]
passwd命令用于指定和修改用户密码。
为用户study设置密码:

userdel
delete a user account and related files
基本格式:
userdel [options] LOGIN
userdel命令用于删除用户。
如果在创建用户的过程中为用户创建了用户目录(一般在/home目录下),可以使用-r参数吧用户的主目录一同删除。
例如,删除study用户。
sudo userdel study

usermod
modify a user account
基本格式:
usermod [options] LOGIN
usermod用于修改用户的属性。
groupadd
create a new group
基本格式:
groupadd [options] group
groupadd用于增加一个新的用户组。
groupdel
delete a new group
基本格式:
groupdel [options] group
groupdel用于删除一个新的用户组。
groupmod
modify a group definition on the system
基本格式:
groupmod [options] GROUP
groupmod用于修改用户组的属性。