Linux作为一款开源的操作系统,凭借其稳定性和灵活性被广泛应用于服务器、开发环境和嵌入式系统等领域,掌握基本的Linux命令是高效操作系统的关键,以下将详细介绍常用的Linux命令及其使用方法,帮助用户快速上手。

文件和目录管理是Linux操作的基础。ls
命令用于列出目录内容,ls -l
以详细格式显示,包括权限、所有者、大小等信息;ls -a
会显示隐藏文件,以开头的文件即为隐藏文件。cd
命令用于切换目录,cd ..
返回上级目录,cd ~
进入当前用户的主目录,cd -
在最近两次目录间切换。pwd
命令显示当前所在的工作目录路径。mkdir
用于创建目录,mkdir -p
可以递归创建多级目录,例如mkdir -p /tmp/test/a
会同时创建test和a目录。rmdir
只能删除空目录,而rm -r
可以递归删除非空目录,rm -f
强制删除不提示,使用时需谨慎。cp
命令复制文件或目录,cp -r
复制目录,cp -p
保留文件属性。mv
命令用于移动文件或目录,也可重命名,例如mv old.txt new.txt
将文件重命名。touch
命令用于创建空文件或更新文件时间戳,ln -s
创建符号链接,类似于Windows的快捷方式。
文件查看和编辑命令中,cat
用于查看文件内容,适合小文件,cat -n
显示行号。more
和less
适合查看大文件,支持分页和搜索,less
功能更强大,可上下翻页和搜索。head
和tail
用于查看文件开头或结尾部分,head -n 10 file.txt
显示前10行,tail -f
实时追踪文件更新,常用于查看日志。grep
用于文本搜索,grep "keyword" file.txt
在文件中搜索关键词,grep -i
忽略大小写,grep -r
递归搜索目录。wc
命令统计文件行数、字数和字节数,wc -l
只统计行数。nano
和vi
是常用的文本编辑器,nano
简单易用,vi
功能强大但需学习基本命令,i
进入插入模式,Esc
退出编辑模式,wq
保存退出,q!
强制退出不保存。
系统信息和管理命令方面,uname -a
显示系统详细信息,top
实时查看系统进程和资源占用,htop
是top
的增强版,界面更友好。ps aux
列出当前运行的进程,kill
终止进程,kill -9
强制终止,pkill
根据进程名终止。df -h
查看磁盘使用情况,du -sh
查看目录或文件总大小。free -h
显示内存使用情况。uname
显示内核名称,uptime
显示系统运行时间和负载。reboot
和shutdown
用于关机重启,shutdown -h now
立即关机,shutdown -r 10
10分钟后重启。
网络相关命令中,ifconfig
或ip addr
查看网络接口信息,ping
测试网络连通性,ping -c 4 example.com
发送4个数据包。netstat -tuln
查看监听的端口,ss -tuln
是netstat
的替代品,显示更高效。wget
下载文件,wget -c
支持断点续传,curl
用于传输数据,支持多种协议。ssh
远程登录,ssh user@hostname
,scp
在本地和远程间复制文件,scp file.txt user@hostname:/path/
。traceroute
跟踪网络路径,nslookup
或dig
查询域名解析。

压缩和解压命令中,tar
是最常用的工具,tar -czf archive.tar.gz file1 file2
创建压缩包,tar -xzf archive.tar.gz
解压,tar -tzf archive.tar.gz
查看压缩包内容。zip
和unzip
用于处理zip格式,zip -r archive.zip dir/
压缩目录,unzip archive.zip
解压。gzip
压缩单个文件,gzip file.txt
生成file.txt.gz,gunzip file.txt.gz
解压。
用户和权限管理命令中,chmod
修改文件权限,chmod 755 file.txt
设置所有者可读写执行,其他用户可读执行,chmod u+x file.txt
给所有者添加执行权限。chown
修改文件所有者,chown user:group file.txt
同时修改所有者和所属组。su
切换用户,su -
切换到root用户并加载环境变量,sudo
以管理员权限执行命令,sudo apt update
更新软件包列表(基于Debian/Ubuntu系统)。useradd
和userdel
添加和删除用户,passwd
修改用户密码。
以下为常用命令的快速参考表格:
命令分类 | 命令格式及示例 | 功能说明 |
---|---|---|
文件目录操作 | ls -la, mkdir -p dir, cp -r src dst | 、创建目录、复制文件/目录 |
文件查看 | cat file.txt, less file.txt, grep "error" log | 查看文件内容、分页浏览、文本搜索 |
系统信息 | top, df -h, free -h, uname -a | 查看进程、磁盘使用、内存、系统信息 |
网络操作 | ping example.com, ssh user@host, wget file.zip | 测试连通性、远程登录、下载文件 |
压缩解压 | tar -czf archive.tar.gz dir, unzip file.zip | 打包压缩、解压zip文件 |
权限管理 | chmod 755 file, chown user file, sudo cmd | 修改权限、更改所有者、管理员权限执行 |
相关问答FAQs:

-
问:Linux中如何批量重命名文件?
答:可以使用rename
命令或结合for
循环实现,将当前目录下所有.txt文件的后缀改为.bak,可执行for f in *.txt; do mv "$f" "${f%.txt}.bak"; done
;或使用rename 's/\.txt/\.bak/' *.txt
(需安装perl版本的rename工具)。 -
问:如何查找大文件并清理磁盘空间?
答:使用find
命令查找大于100MB的文件:find / -type f -size +100M
,然后根据路径手动删除或使用xargs
批量删除,例如find / -type f -size +100M -exec rm -f {} \;
(执行前建议先备份重要数据)。