菜鸟科技网

Linux常用命令有哪些?

Linux作为一款开源的类Unix操作系统,凭借其稳定性、安全性和灵活性,在服务器、嵌入式系统以及开发领域得到了广泛应用,熟练掌握Linux常用命令是高效操作Linux系统的基础,本文将详细介绍Linux中最常用且实用的命令,涵盖文件管理、目录操作、文本处理、系统监控、网络配置等多个方面,帮助用户快速上手并提升工作效率。

Linux常用命令有哪些?-图1
(图片来源网络,侵删)

在文件管理方面,ls命令是最基础的命令之一,用于列出目录中的文件和子目录,通过添加不同选项,可以实现多样化的显示效果,例如ls -l以长格式显示文件详细信息(包括权限、所有者、大小、修改时间等),ls -a显示包括隐藏文件在内的所有文件(以开头的文件为隐藏文件),ls -h以人类可读的格式显示文件大小(如K、M、G)。cp命令用于复制文件或目录,cp file1 file2将file1复制为file2,cp -r dir1 dir2递归复制整个目录(-r选项用于目录复制)。mv命令则用于移动文件或目录,同时也可用于重命名文件,例如mv oldname newname将文件重命名,mv file1 dir1/将文件移动到指定目录。rm命令用于删除文件或目录,rm file删除文件,rm -r dir递归删除目录及其内容,rm -f file强制删除文件而不提示,需谨慎使用,避免误删重要文件。

目录操作中,cd命令用于切换当前工作目录,cd /path/to/directory切换到指定路径,cd ..返回上一级目录,cd ~切换到当前用户的主目录,cd -返回上一次所在的目录。mkdir命令用于创建新目录,mkdir newdir创建单个目录,mkdir -p parentdir/newdir递归创建多级目录(-p选项可自动创建不存在的父目录)。pwd命令用于显示当前工作目录的完整路径,方便用户确认当前位置。

文本处理是Linux操作的强项,cat命令用于查看文件内容,cat file直接显示整个文件内容,cat -n file并附带行号,对于大文件,less命令更为实用,less file分页显示文件内容,支持上下翻页、搜索(/keyword)、跳转行号等交互操作。grep命令用于文本搜索,grep "pattern" file在文件中搜索包含指定模式的行,grep -i "pattern" file忽略大小写搜索,grep -r "pattern" dir/递归搜索目录下的所有文件。sed流编辑器用于文本替换和编辑,sed 's/old/new/g' file将文件中所有"old"替换为"new",sed -i 's/old/new/g' file直接在文件中修改(-i选项表示原地修改)。awk是一款强大的文本分析工具,awk '{print $1}' file打印每行的第一列,awk -F: '{print $1,$6}' /etc/passwd以冒号为分隔符打印/etc/passwd文件的第一列和第六列(用户名和家目录)。

系统监控命令帮助用户实时了解系统运行状态。top命令动态显示系统进程、CPU使用率、内存占用等信息,按P键按CPU使用率排序,按M键按内存使用率排序,按q键退出。htoptop的增强版,提供更直观的界面和更多交互功能,部分系统可能需要单独安装。free命令用于查看内存使用情况,free -h以人类可读格式显示内存和交换分区的使用量。df命令用于查看磁盘空间使用情况,df -h显示各分区的总容量、已用空间、可用空间及使用百分比。ps命令用于查看当前进程状态,ps aux显示所有进程的详细信息,ps -ef以BSD格式显示进程,grep结合ps可筛选特定进程,如ps aux | grep nginx查看nginx相关进程。

Linux常用命令有哪些?-图2
(图片来源网络,侵删)

网络配置与排查命令是网络管理的基础。ifconfigip命令用于查看和配置网络接口,ifconfig显示网络接口信息,ifconfig eth0 up/down启用或禁用网卡,ip addr show显示更详细的网络地址信息(推荐使用ip命令,作为ifconfig的替代)。ping命令用于测试网络连通性,ping www.baidu.com向目标主机发送ICMP请求包,显示往返时间。netstat用于查看网络连接、路由表、接口统计等信息,netstat -an显示所有连接的监听状态和端口,netstat -tuln显示当前监听的TCP和UDP端口。ssh命令用于远程登录Linux服务器,ssh username@remote_ip以指定用户身份登录远程主机,首次登录时会提示保存主机密钥。scp命令用于在本地和远程主机之间安全复制文件,scp localfile username@remote_ip:/remote/path将本地文件复制到远程主机,scp -r username@remote_ip:/remote/path localdir递归复制远程目录到本地。

压缩与解压命令在日常操作中频繁使用。tar命令用于打包和解包文件,tar -czf archive.tar.gz dir/将目录打包并gzip压缩,tar -xzf archive.tar.gz解压gzip格式的tar包,tar -cjf archive.tar.bz2 dir/使用bzip2压缩,tar -xjf archive.tar.bz2解压bzip2格式的tar包。zipunzip用于处理.zip格式的压缩文件,zip -r archive.zip dir/递归压缩目录,unzip archive.zip解压.zip文件。

用户与权限管理是Linux系统安全的核心。chmod命令用于修改文件或目录的权限,chmod 755 file设置文件所有者可读写执行,组用户和其他用户可读执行(权限数字表示:r=4,w=2,x=1),chmod u+x file为文件所有者添加执行权限。chown命令用于修改文件所有者,chown user:group file将文件所有者改为user,所属组改为group,chown -R user:group dir/递归修改目录及其内容的所有者。useradduserdel用于添加和删除用户,useradd username创建新用户,userdel -r username删除用户及其主目录(-r选项同时删除家目录)。

软件安装与管理方面,不同发行版使用不同的包管理工具,基于Debian/Ubuntu的系统使用aptsudo apt update更新软件包列表,sudo apt install package安装软件包,sudo apt remove package卸载软件包,基于RHEL/CentOS的系统使用yumdnf(CentOS 8+),sudo yum update更新系统,sudo yum install package安装软件包,sudo yum remove package卸载软件包,编译安装源码包时,通常使用./configure配置编译选项,make编译源码,sudo make install安装编译后的程序。

Linux常用命令有哪些?-图3
(图片来源网络,侵删)

以下是一些常用命令的快速参考表格:

命令分类 命令 常用选项及功能描述
文件管理 ls -l(长格式),-a(显示隐藏文件),-h(人类可读)
cp -r(递归复制目录),-f(强制复制)
mv 移动文件/目录,重命名文件
rm -r(递归删除目录),-f(强制删除)
目录操作 cd ..(上级目录),~(主目录),-(上一次目录)
mkdir -p(递归创建多级目录)
pwd 显示当前工作目录完整路径
文本处理 cat -n(显示行号)
less 分页显示文件,支持搜索和跳转
grep -i(忽略大小写),-r(递归搜索)
sed -i(原地修改),s/old/new/g(替换文本)
系统监控 top 动态显示进程和资源使用情况
free -h(人类可读格式显示内存)
df -h(人类可读格式显示磁盘空间)
网络命令 ping 测试网络连通性
netstat -tuln(显示监听端口),-an(显示所有连接)
ssh username@remote_ip(远程登录)
压缩解压 tar -czf(打包并gzip压缩),-xzf(解压gzip包)
zip/unzip -r(递归压缩目录)
权限管理 chmod 755(设置权限),u+x(添加执行权限)
chown -R(递归修改所有者),user:group(设置所有者和组)

相关问答FAQs:

  1. 问:如何查找系统中包含特定关键词的文件?
    答:可以使用find命令结合grep进行搜索,在当前目录及其子目录中查找包含"error"关键词的.txt文件,可执行:find . -type f -name "*.txt" -exec grep -l "error" {} \;find . -type f -name "*.txt"查找所有.txt文件,-exec grep -l "error" {} \;对每个文件执行grep搜索,-l选项表示仅输出包含匹配内容的文件名。

  2. 问:如何查看系统最后10行日志文件?
    答:可以使用tail命令查看文件的末尾内容,查看系统日志文件/var/log/syslog的最后10行,可执行:tail -n 10 /var/log/syslog,默认情况下,tail命令显示最后10行,-n选项可指定行数;若需实时监控日志文件的更新内容,可使用tail -f /var/log/syslog-f选项表示持续显示新增内容。

分享:
扫描分享到社交APP
上一篇
下一篇