C语言中的int argc, char *argv[]是什么?
以下是 Linux 基础命令的详细介绍,包括各个命令的用法和常见选项:
1. 文件和目录操作命令
ls
列出目录内容。
-
ls:列出当前目录的文件和目录。
-
ls -l:以长格式显示,显示详细信息(权限、所有者、大小等)。
-
ls -a:显示所有文件,包括隐藏文件(以 . 开头的文件)。
-
ls -lh:以人类可读的格式显示文件大小(例如 KB、MB)。
cd
更改目录。
-
cd /path/to/directory:切换到指定目录。
-
cd ..:返回上一级目录。
-
cd ~:切换到当前用户的主目录。
-
cd -:切换到上一个目录。
pwd
显示当前工作目录的完整路径。
mkdir
创建新目录。
-
mkdir directory_name:创建一个新目录。
-
mkdir -p /path/to/directory:递归创建多级目录。
rmdir
删除空目录。
-
rmdir directory_name:删除指定的空目录。
rm
删除文件或目录。
-
rm file_name:删除指定的文件。
-
rm -r directory_name:递归删除指定的目录及其内容。
-
rm -f file_name:强制删除指定的文件,不提示确认。
cp
复制文件或目录。
-
cp source_file destination_file:复制文件到指定位置。
-
cp -r source_directory destination_directory:递归复制目录及其内容。
mv
移动或重命名文件或目录。
-
mv source_file destination_file:移动或重命名文件。
-
mv source_directory destination_directory:移动目录及其内容。
2. 文件查看和编辑命令
cat
连接并显示文件内容。
-
cat file_name:显示文件内容。
-
cat file1 file2:将多个文件内容连接在一起显示。
more
分页显示文件内容。
less
分页查看文件内容,比 more 更强大。
-
less file_name:逐页显示文件内容,可以向前向后滚动。
head
查看文件的前几行。
-
head file_name:默认显示前 10 行。
-
head -n 20 file_name:显示前 20 行。
tail
查看文件的最后几行。
-
tail file_name:默认显示最后 10 行。
-
tail -n 20 file_name:显示最后 20 行。
-
tail -f file_name:实时显示文件新增的内容(适用于日志文件)。
nano
简单的文本编辑器。
vim 或 vi
功能强大的文本编辑器。
-
vim file_name 或 vi file_name:打开文件进行编辑。
3. 文件权限和所有者命令
chmod
更改文件或目录的权限。
-
chmod 755 file_name:设置文件权限为 rwxr-xr-x。
-
chmod u+x file_name:给文件所有者增加执行权限。
chown
更改文件或目录的所有者和所属组。
-
chown user:group file_name:将文件所有者更改为 user,所属组更改为 group。
-
chown -R user:group directory_name:递归更改目录及其内容的所有者和所属组。
chgrp
更改文件或目录的所属组。
-
chgrp group file_name:将文件的所属组更改为 group。
4. 文件查找和搜索命令
find
查找文件或目录。
-
find /path -name file_name:在指定路径下查找文件。
-
find /path -type d -name directory_name:查找目录。
-
find /path -mtime -7:查找最近 7 天内修改过的文件。
locate
快速查找文件。
-
locate file_name:根据系统数据库查找文件,通常更快。
grep
搜索文件中的文本。
-
grep 'pattern' file_name:在文件中查找匹配的文本。
-
grep -r 'pattern' directory_name:递归查找目录中的匹配文本。
5. 系统信息命令
df
显示文件系统的磁盘空间使用情况。
-
df:显示所有挂载文件系统的磁盘空间使用情况。
-
df -h:以人类可读的格式显示(例如 GB)。
du
显示文件和目录的磁盘使用情况。
-
du file_name:显示指定文件或目录的磁盘使用情况。
-
du -sh directory_name:以人类可读的格式显示目录大小。
top
实时显示系统进程和资源使用情况。
ps
显示当前进程的状态。
-
ps aux:显示所有用户的进程信息。
-
ps -ef:显示所有进程及详细信息。
free
显示系统的内存使用情况。
-
free:显示内存和交换空间的使用情况。
-
free -h:以人类可读的格式显示内存信息。
uptime
显示系统的运行时间和负载信息。
-
uptime:显示系统的运行时间、当前时间、系统负载等信息。
uname
显示系统信息。
-
uname -a:显示系统内核版本、操作系统等信息。
6. 网络命令
ping
测试网络连接。
ifconfig
显示或配置网络接口(在较新的系统中被 ip 命令替代)。
-
ifconfig:显示网络接口的状态信息。
-
ifconfig eth0 up:启动指定网络接口。
ip
管理网络接口(新命令,替代 ifconfig)。
-
ip addr:显示网络接口的 IP 地址。
-
ip link set eth0 up:启动指定网络接口。
netstat
显示网络连接、路由表等信息。
-
netstat -tuln:显示所有监听中的网络连接。
-
netstat -a:显示所有网络连接和端口。
ss
显示网络套接字。
-
ss -tuln:显示所有监听中的网络连接,比 netstat 更加现代和高效。
7. 归档和压缩命令
tar
创建和解压归档文件。
-
tar -cvf archive_name.tar file1 file2:创建一个 .tar 归档文件。
-
tar -xvf archive_name.tar:解压 .tar 归档文件。
-
tar -czvf archive_name.tar.gz directory_name:创建一个 .tar.gz 压缩归档文件。
-
tar -xzvf archive_name.tar.gz:解压 .tar.gz 文件。
gzip
压缩文件。
-
gzip file_name:压缩文件为 .gz 格式。
-
gzip -d file_name.gz:解压 .gz 文件。
bzip2
压缩文件。
-
bzip2 file_name:压缩文件为 .bz2 格式。
-
bzip2 -d file_name.bz2:解压 .bz2 文件。
zip
创建和解压 .zip 文件。
-
zip archive_name.zip file1 file2:创建 .zip 压缩文件。
-
unzip archive_name.zip:解压 .zip 压缩文件。
unzip
解压 .zip 文件。
-
unzip file_name.zip:解压指定的 .zip 文件。
8. 用户和组管理命令
adduser 或 useradd
添加新用户。
-
adduser username 或 useradd username:添加一个新用户。
-
adduser username --home /path/to/home:指定用户的主目录。
passwd
更改用户密码。
-
passwd username:更改指定用户的密码。
-
passwd:更改当前用户的密码。
usermod
修改用户账户。
-
usermod -aG group_name username:将用户添加到指定组。
deluser 或 userdel
删除用户。
-
deluser username 或 userdel username:删除指定用户。
groupadd
添加新组。
-
groupadd group_name:添加一个新组。
groupdel
删除组。
-
groupdel group_name:删除指定组。
9. 进程管理命令
kill
终止进程。
-
kill PID:终止指定进程。
-
kill -9 PID:强制终止指定进程。
pkill
通过进程名终止进程。
-
pkill process_name:终止所有匹配的进程名。
killall
终止所有匹配的进程名。
-
killall process_name:终止所有匹配的进程名。
bg
将后台进程恢复到前台。
-
bg job_number:将指定作业恢复到后台运行。
fg
将后台进程移到前台。
-
fg job_number:将指定作业恢复到前台。
jobs
列出后台作业。
10. 文件和目录查找命令
locate
快速查找文件。
-
locate file_name:根据系统数据库查找文件。
updatedb
更新 locate 命令使用的数据库。
-
updatedb:更新文件数据库,以便 locate 可以找到新文件。