还剩48页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
《常用指令》课件PPT欢迎参加操作系统常用命令全面指南培训本课程将带您从基础到高级,Linux系统地学习系统中的实用指令集合我们将通过实例讲解与操作演示,Linux帮助您全面掌握命令行的使用技巧Linux无论您是初学者还是有经验的用户,这套课件都将成为提高您系统使用Linux效率的必备指南通过本课程的学习,您将能够更加自信、高效地使用Linux系统进行日常操作和管理任务课程概述基础知识学习介绍系统的基本概念、发展历史和核心特性,帮助您建立对生态系统Linux Linux的整体认识命令掌握系统讲解常用命令的使用方法、参数选项和应用场景,从文件操作到系统管Linux理全面覆盖实例演练通过具体案例和操作实例,提升实际操作技能,加深对命令原理的理解和应用能力原理解析深入讲解命令行工作原理,理解命令背后的逻辑,培养系统化思维和问题解Linux决能力本课程适合初学者和有一定经验的用户,我们将通过循序渐进的方式,帮助您从命令行新Linux手成长为熟练的系统操作者Linux简介Linux开源自由创始历史作为开源、免费的类操作系统,允许任何人查看、修改和分由芬兰人于年创建,初衷是创建一个免费且可Unix LinuxLinus Torvalds1991发其源代码,形成了强大的社区生态自由使用的操作系统内核系统特性应用领域多用户、多任务的实时操作系统,以其稳定性、高效性、安全性和强大广泛应用于服务器、工作站、嵌入式系统,从超级计算机到智能手机,功能著称于世无处不在Linux系统以其卓越的性能和灵活性,成为了数据中心和云计算基础设施的首选操作系统,也是开发者和系统管理员必须掌握的技能之一Linux发行版介绍Linux有众多发行版,每个都有其特点以用户友好著称,提供良好的桌面体验;以稳定性和安全性闻名;是由支持的社区版Linux UbuntuDebian FedoraRed Hat本,提供最新的技术创新;是企业级服务器的首选,提供长期稳定支持;是面向企业的完整解决方案;专为桌面应用而优化,注重易用CentOS SUSEMEPIS性简介CentOS源自RHEL基于的源代码构建,去除了专有成分,提CentOS RedHat EnterpriseLinux RHEL供免费但功能相同的企业级系统社区维护由开源社区维护的企业级操作系统,汇集了众多专业开发者的智慧和贡献,保证系统质量高度兼容与保持高度兼容,继承其出色的稳定性和安全性,同时免费提供企业级功能RHEL长期支持提供长达年的维护更新支持,使企业用户能够长期稳定运行系统而无需频繁升级10凭借其稳定性和可靠性,成为了许多企业服务器环境的首选操作系统,特别适合需要长CentOS期稳定运行的关键业务应用文件系统结构Linux/etc和/bin/sbin系统配置文件目录,包含各种服务和应用的配置信息存放基本命令和系统命令的目录,用于系统启动和维护/home用户主目录,每个用户有自己的子目录存放个人文件/usr用户程序和数据目录,包含大部分应用/var程序和工具存放变动文件的目录,如日志文件、临时邮件等采用树状目录结构,从根目录开始向下分支每个目录都有特定的用途,理解这一结构对于高效导航和管理系统至关重要Linux/其他重要目录还包括引导文件和临时文件/boot/tmp基础命令概述命令基本结构命令名称选项参数++命令选项短选项格式与长选项格式-a--all命令组合通过管道和重定向、连接命令|帮助获取使用、和获取命令帮助man--help info命令遵循一致的语法结构,掌握这些基本规则可以帮助您更快上手各种命令命令的选项通常用于修改命令的行为方式,而参数则指定命令操Linux作的对象组合使用命令可以实现复杂的功能,这是命令行强大之处Linux文件和目录操作命令1ls ls-h ls-R列出目录内容,是最常以人类可读方式显示文递归显示子目录内容,用的文件查看命令之一件大小,将字节转换为查看完整目录树结构、等KB MB显示详细信适合查看复杂目录•ls-l•息,包括权限、所与结合使用效果更结构•-l有者和文件大小佳ls-lh可与其他选项组合•显示所有文便于直观理解文件•ls-a•ls-laR件,包括以点开头占用空间的隐藏文件命令是日常使用最频繁的命令之一,通过组合不同的选项,可以灵活地获取ls所需的文件信息熟练掌握命令的各种用法,是高效进行文件操作的基础ls文件和目录操作命令21命令cd改变当前工作目录,是文件系统导航的基本命令4常用参数、、、cd/path cd..cd~cd-~主目录快速返回用户主目录的捷径cd~..上级目录移动到当前目录的父目录cd..命令用于在文件系统中导航,允许您在不同目录间切换命令格式简单后跟目标目录路径可以切换cd Linuxcd cd/path/to/directory到系统中的任意目录;返回上一级目录;切换到用户主目录;快速切换到上一个工作目录,非常适合在两个常用目录间来回cd..cd~cd-切换文件和目录操作命令3命令功能常用选项示例创建目录创建多级mkdir-p mkdir-p目录a/b/c删除空目录删除多级rmdir-p rmdir空目录empty_dir删除文件或目递归删rm-r rm-rf录除强制,-fdirname命令用于创建新目录,单个目录使用,多级目录需要mkdir mkdirdirname选项只能删除空目录,如需删除非空目录,应使用是-p rmdir rm-rrm强大的删除命令,使用递归删除目录及内容,选项强制删除而不提示-r-f是危险命令,尤其在用户下,误删可能导致系统无法恢复rm-rf root文件和目录操作命令4基本复制命令将文件从源位置复制到目标位置,保持原始文件不变cp sourcedestination例如将文档复制到备份目录cp document.txt backup/document.txt目录复制递归复制整个目录及其内容到新位置cp-r source_dir dest_dir这是复制目录时必须使用的选项,否则会报错省略目录保留属性使用选项保留源文件的所有权、权限和时间戳等属性cp-p file1file2-p在需要精确复制文件元数据的情况下非常有用交互式复制在覆盖目标文件前请求确认,防止意外覆盖重要文件cp-i file1file2建议在日常使用中养成使用的习惯,避免数据损失-i命令是系统中基本且常用的文件操作命令,掌握其不同选项组合可以满足各种复制需求cp Linux对于重要数据操作,建议结合选项使用,并定期备份关键数据-i文件和目录操作命令5文件重命名文件移动交互式移动目录操作将重命名为将文件移动到指定在目标存在移动或重命名整mv file1file2file1mv filedir/mv-i sourcedest mvdir1dir2,适用于单个文件的重命名目录,文件名保持不变时询问是否覆盖,保护重要文件个目录,不需要特殊选项file2操作命令在系统中用于移动文件或目录,也可用于重命名与不同,操作后源文件不再存在不需要特殊选项即可处理目录重命名mv Linuxcp mvmv实际上是特殊的移动操作,只改变了文件路径而非位置在操作重要文件时,建议使用选项避免意外覆盖-i文件查看命令1命令命令cat tac是的缩写,用于连接文件并打印到标准输出是的反向操作,按照从最后一行到第一行的顺序显示文cat concatenatetac cat它是最基本的文本查看工具之一件内容这在需要查看日志文件最新记录时特别有用显示整个文件内容从最后一行开始显示文件内容•cat filename•tac filename显示行号按反序连接多个文件并显示•cat-n filename•tac file1file2合并多个文件•cat file1file2file3命令名称就是的反写,直观地反映了其功能tac cat适合查看较小的文件,对于大文件可能导致内容快速滚动难cat以阅读这些文件查看命令是日常操作中不可或缺的工具命令简单直接,适合查看配置文件、脚本或短文本通过重定向操作符,Linux cat还可以用于创建新文件或合并现有文件对于需要倒序查看内容的情况,提供了便捷的解决方案cat tac文件查看命令2命令命令more less是一个分页显示文件内容的是的改进版,提供双向more lessmore过滤器,允许向前浏览文件但不能滚动、搜索功能和更多导航选项向后翻页使用空格键翻页,按使用上下箭头、q退出查看是早期系统键浏览,按more UnixPageUp/PageDown的标准工具,简单易用但功能有限进行搜索,按退出不会一/q less次性加载整个文件,对大文件处理更高效常用快捷键空格键下翻页、键上翻页、键文件开头、键文件结尾、bgG向下搜索、向上搜索、下一个上一个匹配项、/patternpatternn/N/q键退出掌握这些快捷键可以大大提高文件浏览效率和命令是查看大型文本文件的理想工具,它们允许用户逐页浏览内容而不是more less一次显示全部与相比,这些分页工具在处理日志文件、源代码或大型配置文件时cat更加实用的一个流行口号是,暗示它比命令功能更强大less lessis moremore文件查看命令3命令head命令用于显示文件开头部分,默认显示前行使用选项可以指定显示的行数,如显示前行使用选项可以按字节数显示,如head10-n head-n20filename20-c head-c100file显示前个字节100命令tail命令用于显示文件结尾部分,默认显示最后行使用选项可以自定义行数,如显示最后行选项特别有用,它能持续监控文件变化并实时显示tail10-n tail-n50filename50tail-f新增内容,尤其适合监控不断更新的日志文件实时监控命令是系统管理员的得力助手,可以实时查看日志文件的更新内容,无需反复手动打开文件更进一步,能够在文件被删除或轮换后自动重新打开,确保始终监控tail-f logfiletail-F正确的文件和命令在处理大型文件时非常实用,让用户能够快速查看文件的开头或结尾部分,而无需加载整个文件这些命令在日志分析、脚本调试和文件内容检查等场景中广泛使用head tail文件内容搜索命令1高级过滤结合正则表达式实现强大的模式匹配扩展功能递归搜索、反向匹配、显示行号-r-v-n基本语法在指定文件中搜索文本grep pattern filename是系统中最强大的文本搜索工具之一,名称来源于它通过搜索文件或标准输入,找grep GNU/Linux GlobalRegular ExpressionPrint出包含指定模式的行并显示命令支持多种搜索模式忽略大小写进行搜索;递归搜grep grep-i patternfile grep-r patterndirectory索目录中所有文件;显示不匹配模式的行;显示匹配行及其行号grep-v patternfile grep-n patternfile可以与管道结合使用,处理其他命令的输出,如查找相关进程熟练掌握对于分析日志、筛选数据和系grep ps aux|grep nginx nginx grep统调试至关重要文件内容搜索命令2按名称查找•find/path-name filename忽略大小写•find/path-iname filename使用通配符•find/path-name*.txt按大小和时间查找大于的文件•find/path-size+100M100MB小于的文件•find/path-size-1M1MB天内修改的文件•find/path-mtime-77天前创建的文件•find/path-ctime+3030按所有者和权限查找指定用户的文件•find/path-user username指定组的文件•find/path-group groupname指定权限的文件•find/path-perm644可写文件•find/path-perm-u+w组合查询与操作•find/path-name*.log-size+10M•find/path-type f-exec ls-l{}\;•find/path-name*.tmp-delete命令是系统中最强大的文件搜索工具,可以根据多种条件在文件系统中查找文件与搜索文件内容不同,搜索的是文件本身的find Linuxgrep find属性命令的强大之处在于可以组合多个条件,并对搜索结果执行操作,如删除、移动或自定义命令find文件压缩与解压命令操作命令说明创建归档将文件打包成格式,不tar-cvf archive.tar filestar压缩解包归档解开格式的归档文件tar-xvf archive.tar tar压缩创建归档并用压缩gzip tar-czvf tar gziparchive.tar.gz files解压解压压缩的归档gzip tar-xzvf archive.tar.gz gziptar压缩创建归档并用压bzip2tar-cjvf tarbzip2缩archive.tar.bz2files解压解压压缩的归档bzip2tar-xjvf archive.tar.bz2bzip2tar命令是系统中处理归档和压缩的标准工具,名称源自磁带存档tar Linuxtape archive本身只做归档不压缩,需要与或等工具结合才能压缩文件选项表示创建归档,targzipbzip2c表示解包,表示详细模式显示处理的文件,表示指定归档文件,表示使用压缩,x vf zgzip j表示使用压缩bzip2系统信息命令1命令uname显示系统信息,显示所有系统信息,包括内核版本、主机名、处理器架构等这uname-a是快速了解系统基本情况的重要命令命令hostname显示或设置系统主机名,无参数时显示当前主机名,用户可以通过root hostname临时修改主机名永久修改需编辑配置文件new_name命令uptime显示系统运行时间和负载情况,输出包括当前时间、系统运行天数、小时数、当前登录用户数以及平均负载(分钟、分钟和分钟)1515和命令date cal显示或设置系统日期和时间,支持多种格式;显示当月日历,显示全年日历date calcal-y这些命令在脚本和日常使用中都很有用这些系统信息命令提供了快速了解系统状态的方法它们不仅在日常系统管理中有用,在脚本Linux编程和问题排查时也经常使用这些命令大多简单直观,输出信息丰富,是系统管理员的基本工具系统信息命令2命令命令命令df dufree()命令用于显示文件系统()命令用于显示目录或命令显示系统内存使用情况,包括df diskfree dudisk usagefree的磁盘空间使用情况,包括总容量、已文件占用的磁盘空间物理内存和交换空间用空间、可用空间和使用率以易读方式显以人类可读方式显示内存•du-sh directory•free-h以人类可读方式显示(、示目录总大小信息•df-h KB、)MB GB显示当每秒刷新一次显示•du-h--max-depth=1•free-s55显示文件系统类型前目录下各子目录大小•df-T显示内存总和•free-t显示使用情况显示所有文件而不仅是目录•df-i inode•du-a命令是内存监控和问题排查的基本free命令对于监控磁盘空间使用情况至关命令有助于找出占用大量磁盘空间的工具df du重要,可以及时发现空间不足问题文件或目录这些系统资源监控命令对于维护服务器的健康运行非常重要通过定期检查磁盘空间和内存使用情况,管理员可以防止资源耗Linux尽导致的服务中断这些命令通常与监控工具配合使用,实现自动化系统资源监控进程管理命令1命令命令和命令ps pstreetop htop()命令用于显示当前运行以树状结构显示进程之间的父子关系,动态实时显示进程信息,包括、内存ps processstatus pstreetop CPU进程的快照显示所有进程,包括完整直观展示进程的层次结构显示进使用率和运行时间,提供交互式界面可以对进ps-ef pstree-p命令行;以风格显示所有进程,包程;显示完整命令行这个命令程进行排序和管理是的增强版,提ps auxBSD IDpstree-a htoptop括和内存使用率;显示有助于理解进程之间的关系和启动顺序供更友好的界面和更多功能,如彩色显示、垂CPU ps-u username指定用户的进程命令是进程管理的基础工直和水平滚动、鼠标操作支持等ps具这些进程管理命令让管理员能够全面了解系统中运行的程序状态提供静态快照,适合脚本使用;和提供实时监控,适合交互式使用ps tophtop熟练使用这些命令,对于系统性能优化和问题排查至关重要进程管理命令215信号总数系统支持多种进程信号,用于不同级别的进程终止和控制Linux9强制终止发送信号,立即终止进程而不给进程清理的机会kill-9PID SIGKILL15正常终止或发送信号,请求进程正常终止,允许进程清理资源kill PIDkill-15PID SIGTERM0进程检查可检查进程是否存在,不发送实际信号kill-0PID命令用于向进程发送信号,最常用于终止进程基本语法是选项,其中是目标进程的标识符默认发送信号(),kill kill[]PID PIDkill TERM15请求进程正常终止命令可根据名称终止多个进程,如终止所有进程更灵活,可用模式匹配终止进程,如killall killallfirefox Firefoxpkill pkill-终止指定用户的所有进程u username在使用这些命令时需谨慎,特别是,它会立即终止进程而不给进程清理资源的机会,可能导致数据丢失先尝试正常的信号,仅在进kill-9TERM程无响应时才使用信号KILL进程管理命令3任务控制后台执行、、命令用于控制前台和后台任务命令使进程忽略挂断信号,即使终端jobs fgbgnohup关闭也能继续运行显示当前的任务列表优先级调整在后台运行并•jobs shell•nohup command忽略挂断信号将任务移到前台进程监控•fg%n n和命令用于调整进程优先级,数nice renice输出默认重定向到文件继续执行后台暂停的任务值范围从最高到最低•nohup.out•bg%n命令定期执行指定命令并显示结果-2019watch以较低优先每秒更新一•nice-n10command•watch-n5psaux5级启动命令次进程列表调整运行中进程的高亮显示变•renice5-p PID•watch-d command优先级化部分2314这些进程管理命令为系统提供了灵活的任务调度和优先级管理能力优先级调整允许关键任务获得更多系统资源;后台执行使长时间运行的任务不受终端状态影响;任务控制命令Linux则提供了在前台和后台任务之间切换的方法这些功能共同构成了多任务处理能力的基础Linux用户和权限管理命令1添加用户设置密码创建新用户为用户设置或修改密码•useradd username•passwd username创建用户并建立主目录锁定用户账户•useradd-m username•passwd-l username创建用户并添加到多个组解锁用户账户•useradd-G group1,group2username•passwd-u username指定用户的登录删除用户密码•useradd-s/bin/bash usernameshell•passwd-d username修改和删除用户查看用户信息修改用户所属组显示用户和组信息•usermod-G group1,group2username•id usernameID ID将用户添加到组显示用户详细信息•usermod-aG groupusername•finger username删除用户但保留主目录显示当前登录的用户•userdel username•who删除用户及其主目录显示当前登录用户及其活动•userdel-r username•w用户管理是系统管理的基础工作之一这些命令允许管理员创建、修改和删除用户账户,管理用户密码,分配用户组,以及查询用户信息在多用户环境中,正确设置用户权限和组关系对Linux于系统安全至关重要这些命令通常需要权限才能执行root用户和权限管理命令2添加用户组修改用户组删除用户组命令用于创建新的用命令用于修改现有命令用于删除不再需groupadd groupmodgroupdel户组用户组的属性要的用户组•groupadd groupname•groupmod-n•groupdel groupname创建新组重删除指定组newname oldname命名组注意不能删除作为用户•groupadd-g1000•groupmod-g1001•指定创修改组主组的组groupname GIDgroupname ID建组•groupadd-r创建系统groupname组组成员管理命令用于管理组成员gpasswd和组管理员•gpasswd-a usergroup将用户添加到组•gpasswd-d user从组中删除用户group•gpasswd-A user设置组管理员group用户组管理是权限管理的重要组成部分,通过合理设置用户组,可以高效地管理多用户对系统资源的访问权限Linux groups命令可以显示用户所属的所有组,如在系统中,每个用户必须属于至少一个主组,还可以属于多个groups usernameLinux附加组用户和权限管理命令3命令和命令chmod chownchgrp用于修改文件或目录的访问权限,支持数字模式和符号模式修改文件所有者,修改文件所属组chmod chownchgrp两种方式修改文件所有者•chown user file数字模式()•chmod755file rwxr-xr-x同时修改所有者和组•chown user:group file符号模式(给所有者添加执行权限)•chmod u+x file递归修改目录及内容•chown-R递归修改目录及其内容•chmod-R只修改文件所属组•chgrp group file常用权限(文件)、(目录)•644755这些命令通常需要权限或文件所有者权限root权限数字含义读、写、执行4=r2=w1=x在系统中,每个文件和目录都有三组权限设置所有者、所属组和其他用户每组权限都有读、写和执行三种权限Linux ug or wx命令允许修改这些权限,而和命令则用于修改文件的所有权正确设置文件权限是系统安全的基础,可以防止未授权访问chmod chownchgrp和修改重要文件特殊权限位如、和在某些场景中也很重要,如设置位,允许用户以文件所有者的权限SUID4SGID2Sticky bit1chmod4755file SUID执行该文件网络命令11命令ifconfig传统的网络接口配置命令,显示和设置网络接口信息显示所有接口(包括禁用的)•ifconfig-a设置地址•ifconfig eth
0192.
168.
1.2IP启用禁用接口•ifconfig eth0up/down/命令ip现代系统推荐使用的网络配置工具,功能更全面Linux显示地址信息•ip addrshow IP启用禁用接口•ip linkset deveth0up/down/显示路由表•ip routeshow命令ifup/ifdown高级脚本命令,用于启用或禁用网络接口启用接口•ifup eth0eth0禁用接口•ifdown eth0eth0基于系统配置文件工作,自动应用配置•网络配置命令是系统管理的重要组成部分是传统命令,在许多旧系统上仍然使用;命令是更新的Linux ifconfigip替代品,提供更丰富的功能;则提供了更简单的接口,自动应用系统配置文件中的设置这些命令通ifup/ifdown常需要权限才能执行配置更改,普通用户仅可查看网络信息root网络命令24默认包数设置发送个测试包后停止,便于脚本使用ping-c4456包大小标准请求包大小字节,可用选项修改ICMP Echo-s30跳数限制默认最大跳数,超过此值被视为不可达traceroute
0.5刷新率默认每秒更新一次数据,可用选项调整mtr
0.5-i命令是最基本的网络连接测试工具,使用协议发送请求到目标主机并等待响应常用选项包括持续测试连接,ping ICMPEcho pinghostname ping仅发送个测试包对于测试网络连通性和测量网络延迟非常有用,是网络故障排查的第一步-c4hostname4ping命令显示数据包从源主机到目标主机经过的路由路径,帮助识别网络瓶颈和故障点命令结合了和的功能,提供持traceroute mtrping traceroute续更新的网络路径质量报告,包括每个节点的延迟和丢包率,是高级网络诊断的利器网络命令3命令命令netstat ss是监控网络连接和统计信息是统计的简称,是netstat ssSocket的传统工具显示所的现代替代品,速度更快、netstat-tuln netstat有和监听端口;功能更强显示所有TCP UDPnetstat ss-tuln TCP显示所有活动连接及其相关进和监听端口;显示详-anp UDPss-anp程;显示路由表信息细连接信息和关联进程;显示netstat-r ss-s输出详细但性能较低,逐渐概要统计信息直接从内核空间netstat ss被命令取代获取信息,更加高效ss命令lsof列出打开的文件,但也可以显示网络连接信息显示所有网络连接;lsof lsof-i显示使用端口的进程;显示所有连接提供了lsof-i:8080lsof-i tcpTCP lsof文件和网络视角的统一视图,对排查问题非常有用这些网络监控命令允许管理员查看系统上的所有网络连接、监听端口和相关进程这些信息对于网络故障排查、安全审计和性能优化至关重要通过这些工具,可以识别异常连接、检查服务状态,以及监控网络资源的使用情况在使用这些命令时,结合等过滤工具grep可以更精确地定位所需信息网络命令4命令命令wget curl是一个非交互式网络下载器,支持、和是一个功能强大的命令行工具,用于传输数据和测试wget HTTPHTTPS FTPcurl API协议获取网页内容并输出到标准输出•curl URL下载文件到当前目录•wget URL下载文件并保留原始文件名•curl-O URL支持断点续传,适合大文件•wget-c URL下载文件并指定保存名称•curl-o fileURL后台下载,输出写入•wget-b URLwget-log仅获取响应头信息•curl-I URLHTTP递归下载网站,不追踪父目录•wget-r-np URL发送自定义请求头•curl-H Header:Value URL从文件读取列表下载•wget-i file.txt URL发送请求•curl-X POST-d dataURL POST适合简单文件下载和网站镜像,稳定可靠,支持批处理wget功能更丰富,支持几乎所有网络协议,适合开发和调试curl和都是系统中常用的网络传输工具,但各有特长更侧重于文件下载,支持断点续传和递归下载;则更灵活,wget curlLinux wgetcurl支持更多协议和请求方法,适合测试和脚本集成在日常使用中,简单下载可选择,复杂网络操作则推荐两者都支持API wgetcurl代理服务器、自定义请求头和各种身份验证机制网络命令5远程登录命令用于安全地登录到远程主机可以添加指定非标准端口,或使用ssh user@host-p port-i指定私钥文件进行身份验证默认使用端口,通过加密隧道提供安全的远程访identity_file SSH22问安全文件传输命令实现了基于的安全文件复制将本地文件复制到远程主scp SSHscp fileuser@host:/path机;将远程文件复制到本地还支持选项递归复制目录scp user@host:/path/file./scp-r高效文件同步命令提供高效的文件同步功能,只传输变化的部分rsync rsync-avz source/同步本地目录到远程;同步远user@host:/dest/rsync-avz user@host:/source//dest/程目录到本地特别适合大量文件的增量备份rsync高级功能SSH还提供端口转发功能SSH ssh-L local_port:remote_host:remote_port user@host创建本地端口转发;创建代理这些功能使成为网ssh-D portuser@host SOCKSSSH络安全的瑞士军刀这些基于的网络工具为系统提供了安全的远程访问和文件传输能力使用公钥加密技术确SSH LinuxSSH保通信安全,已经成为远程系统管理的标准工具通过密钥认证,可以实现无密码登录,进一步提高SSH安全性和便利性对于需要频繁远程管理的管理员来说,熟练掌握这些工具是必不可少的文本处理命令1文本处理命令2基本排序数值排序反向排序命令按字母顺序对文本命令按数值大小排命令将排序结果反转,sort filesort-nfilesort-rfile行进行排序默认情况下,排序序,而不是字符顺序这对于处实现从大到小或从到的排序Z A基于每行的第一个字符,从小到理包含数字的文件非常重要,否可以与其他选项组合使用,如大排列这是处理文本数据最基则会排在之前实现数值的降序排102sort-nr file本的方式列按列排序命令按文件的第sort-k2,2file列排序对于格式化数据(如2文件)非常有用可以指定CSV多列,如sort-k1,1-k2,2nfile命令还有许多其他实用选项排序并去除重复行,相当于;sort sort-u filesort file|uniq sort-t:-使用冒号作为字段分隔符,按第列()进行数值排序;以人类可k3,3n/etc/passwd3UID sort-h file读方式排序文件大小(如、、);按月份名称排序可以处理大型文件,并KB MBGB sort-M filesort可以结合管道与其他命令协同工作,是文本处理的核心工具文本处理命令3基本去重删除文件中连续的重复行•uniq file只能作用于已排序的文件•常与命令配合•sort sortfile|uniq统计重复显示每行出现的次数•uniq-c file输出格式为计数行内容•用于分析文本中的重复模式•仅显示重复只显示重复的行•uniq-d file每组重复行只显示一次•用于筛选出文件中的重复内容•仅显示唯一只显示没有重复的行•uniq-u file筛选出独特内容,过滤掉所有重复•找出独特记录的有用工具•命令用于报告或删除文件中的重复行,默认只处理相邻的重复行这意味着要完全去除所有重复,通常需要先对文件排序uniq sortfile|uniq选项特别有用,可以统计每行出现的次数,常用于日志分析,如统计访问最多的地址uniq-c IPsort access.log|uniq-c|sort-nr另外,还支持其他选项忽略前个字段进行比较;忽略每行开头的个字符;只比较每行的前个字符这uniq uniq-f NN uniq-s NN uniq-w NN些选项增强了命令的灵活性,使其适用于更复杂的文本处理任务文本处理命令41命令cut从文件的每一行中提取部分内容提取用户名•cut-d:-f1/etc/passwd提取每行的前个字符•cut-c1-5file5提取前个字节•cut-b1-10file102命令paste将多个文件按行合并为表格形式并排合并两个文件•paste file1file2使用冒号作为分隔符•paste-d:file1file2将单个文件的所有行合并为一行•paste-s file3命令join基于共同字段合并文件行(类似数据库连接)基于第一个字段合并•join file1file2指定连接字段•join-12-23file1file2指定字段分隔符•join-t:file1file2命令是提取文件列数据的利器,尤其适合处理固定宽度的字段或有分隔符的文本(如、文件)选项指定分隔符,cut CSVTSV-d-f选项指定要提取的字段,选项按字符位置提取例如,要从提取用户名和,可使用-c/etc/passwd UIDcut-d:-f1,3/etc/passwd命令则是将多个文件按行组合,每个文件提供一列数据它对于创建表格数据或重组列数据非常有用默认使用制表符作为分paste隔符,可通过选项更改命令更进一步,提供类似的功能,根据共同字段合并文件,但要求输入文件按连接字段排-d joinSQL JOIN序文本处理命令5命令命令tr sed()命令用于转换或删除字符,处理标准输入并输出结()是功能强大的流编辑器,可以执行复杂的文tr translatesed streameditor果本转换小写转大写全局替换文本•tr a-z A-Zfile•sed s/old/new/g file删除所有数字删除第行•tr-d0-9file•sed5d file5压缩连续空格为单个空格删除匹配模式的行•tr-sfile•sed/pattern/d file使用字符类直接修改文件•tr[:lower:][:upper:]file•sed-i s/old/new/g file只打印第行•sed-n10,20pfile10-20命令简单高效,但不能直接处理文件,必须通过重定向或管道提供tr输入使用正则表达式进行模式匹配,功能远超简单替换sed命令适合进行简单的字符级转换,如大小写转换、删除特定字符或压缩重复字符它不支持正则表达式,但提供了字符类(如、tr[:digit:])来简化常见操作由于只处理标准输入,通常需要使用重定向或[:space:]tr catfile|tr a b trabfile命令则是文本处理的瑞士军刀,除了替换功能外,还能插入、删除、追加文本和执行复杂的编辑操作它使用行为处理单位,支持强大的正sed则表达式和多种编辑命令选项允许直接修改源文件,非常适合自动化脚本中的文本处理任务sed-i文本处理命令6是一种强大的文本处理编程语言,特别适合处理结构化数据它按行处理文本,将每行分割为字段,然后应用指定的操作基本语法awk为最简单的用法是,打印每行的第一个字段默认以空白字符为字段分隔符,awk pattern{action}file awk{print$1}file awk可通过选项更改,如打印用户名和-F awk-F:{print$1,$3}/etc/passwd UID的强大之处在于它可以执行复杂操作计算第一列的总和;条件过awk awk{sum+=$1}END{print sum}file awk$31000file滤输出;统计第一字段的出现次数甚至支持自定义函数、条件awk{count[$1]++}END{fori incount printi,count[i]}file awk语句和循环结构,可以编写复杂的数据处理脚本脚本基础Shell1脚本声明以开头,声明使用的解释器#!/bin/bash shell注释与说明使用添加注释,说明脚本功能和使用方法#变量定义与使用定义变量,或引用变量name=value$name${name}命令执行与结果获取或获取命令输出result=$command result=`command`脚本是系统中自动化任务的强大工具每个脚本都应以行()开始,指定使用的解释器脚本可通过赋予执行权限(Shell Linuxshebang#!/bin/bash shellchmod+x)后直接执行,或通过调用在脚本中,使用添加注释,这对于记录脚本功能和使用方法非常重要script.sh shscript.sh#变量是脚本的基本元素,定义时不使用符号(),引用时需要符号()变量名区分大小写,通常使用字母、数字和下划线命令结果可通$name=value$echo$name过或反引号捕获到变量脚本还支持特殊变量表示脚本名称,、表示脚本参数,表示参数数量,表示上一命令的退出状态$command Shell$0$1$2$#$脚本基础Shell2分支结构条件测试和结构实现条件分支逻辑if/then/else/fi case/esac2使用或命令进行条件测试,如[condition]test1比较数值相等[$a-eq$b]循环结构循环和循环执行重复操作for while参数处理函数定义、等访问脚本参数,获取参数数量$1$2$#定义可重用代码块function name{commands;}脚本支持丰富的控制结构条件测试使用方括号或命令,如检查文件是否存在,比较数值是否相等结构实现条件分支Shell test[-f file][$a-eq$b]if/then/else/fi结构适合多分支选择if[condition];then commands;else commands;fi case/esac case$var inpattern1commands;;pattern2commands;;esac循环结构包括循环,和循环函数通过for fori inlist;do commands;done whilewhile[condition];do commands;done functionname定义,通过调用脚本参数通过位置变量、等访问,和表示所有参数这些控制结构和参数处理机制使脚本能够处理复杂的自动化{commands;}name$1$2$*$@Shell任务和批处理操作系统管理命令1服务控制操作服务状态systemctl start/stop/restart service启动管理设置服务开机自启systemctl enable/disable service状态查询显示服务详细状态systemctl statusservice服务列表查看所有服务systemctl list-units--type=service是现代系统中管理系统服务的核心命令,取代了传统的和命令它是systemctl Linuxservice chkconfig初始化系统的管理工具,提供了一致的接口来控制服务状态和开机启动设置systemd systemctlstatus显示服务的状态、日志和相关进程;控制nginxnginxsystemctl start/stop/restart/reload nginxnginx服务的运行状态;设置服务是否在系统启动时自动启动systemctl enable/disable nginx命令是日志系统的前端,用于查看系统日志查看服务的日志;journalctl systemdjournalctl-u nginxnginx显示最新日志并持续更新;journalctl-f journalctl--since2023-10-01--until2023-10-02查看特定日期范围的日志这些命令是系统管理员日常维护系统的基本工具系统管理命令2命令功能常用选项示例编辑定时任务编辑当前用户的crontab-e-u usernamecrontab列出定时任务查看指定用户的crontab-l-u usernamecrontab删除定时任务交互式删除当前用户的crontab-r-icrontab一次性定时任务at-f fileat10:00tomorrow系统负载低时执行batch-f filebatchscriptfile命令用于设置定期执行的任务,是系统自动化维护的重要工具编辑当前crontab Linuxcrontab-e用户的定时任务表,任务格式为分时日月周命令,如表示每天凌晨02***/backup.sh2点执行备份脚本列出当前用户的所有定时任务,删除所有定时任务超级crontab-l crontab-r用户可以通过选项管理其他用户的定时任务-u命令用于设置一次性定时任务,如安排明天点执行任务,然后输入要执at at10:00tomorrow10行的命令,最后按结束命令类似,但只在系统负载较低时执行任务命令查看待Ctrl+D batchatq处理的任务,用于删除任务这些命令为系统管理员提供了灵活的任务调度机制at atrmat磁盘管理命令磁盘分区是传统的磁盘分区工具,列出所有磁盘及其分区表,进入交互式界面编fdisk fdisk-l fdisk/dev/sda辑指定磁盘的分区表较新的系统还可使用(分区)或(支持多种分区表)gdisk GPTparted文件系统创建命令用于在分区上创建文件系统,如创建文件系统,mkfs mkfs.ext4/dev/sda1ext4mkfs.xfs创建文件系统不同文件系统有不同的特性和适用场景,需根据需求选择/dev/sda2XFS挂载与卸载命令将文件系统挂载到目录树,如;命令卸载文件系统,mount mount/dev/sda1/mnt umount如要实现开机自动挂载,需编辑文件添加相应配置umount/mnt/etc/fstab数据复制与转换命令用于低级别的数据复制和转换,如创建磁盘镜像,dd ddif=/dev/sda of=/dev/sdb dd创建固定大小的文件使用时需谨慎,错误操作可能导if=/dev/zero of=/file bs=1M count=1000致数据丢失磁盘管理是系统管理的重要组成部分在管理磁盘时,首先使用或类似工具创建分区,然后用Linux fdisk创建文件系统,最后通过命令挂载到系统目录树中命令可查看已挂载文件系统的空间使mkfs mountdf-h用情况,命令可显示分区的和文件系统类型为了数据安全,对磁盘进行操作前应确认命令参数并blkid UUID备份重要数据性能监控命令与vmstat iostat(虚拟内存统计)显示系统内存、进程、块和活动的快照每秒输出一次,共次(统计)提供使用率和设备统计信息,特别适合监控磁盘性能vmstat IOCPU vmstat2525iostat IOCPU IO显示详细的设备统计,每秒刷新一次iostat-xd22与mpstat sar(多处理器统计)显示每个核心的使用情况显示所有处理器的统计信息(系统活动报告)是一个全面的性能监控工具,可显示历史和实时数据记录mpstat CPUmpstat-P ALLsar sar-u使用率,监控内存,监控,监控网络CPU sar-r sar-b IOsar-n DEV与dstat iotop是一个多功能监控工具,可同时监控、内存、网络、磁盘等多种资源同时显示、磁盘、网络、分页和系统信息专注于监控磁盘使用情况,以类似dstat CPUIO dstat-cdngy CPUiotop I/O top的界面显示进程的活动只显示正在进行的进程IO iotop-o IO这些性能监控工具为系统管理员提供了全面了解系统资源使用情况的方法性能问题排查通常需要综合使用多种工具先用或获取整体状况,确定瓶颈类型;然后使用专门工具深入分析特定子系统,如分析磁盘,分析性能事件定top dstatiotop IOperf CPU期监控和基准测试有助于建立系统正常行为的基线,便于及时发现异常高级网络命令安全工具和提供防火墙配置iptables firewall-cmd网络探测进行网络探测和安全扫描nmap数据包分析3捕获和分析网络数据包tcpdump工具DNS、和进行查询dig nslookup host DNS是强大的命令行数据包分析工具,可捕获和显示网络数据包内容捕获接口上的流量;tcpdump tcpdump-i eth0port80eth0HTTP tcpdump-w保存捕获数据供后续分析是网络探测和安全扫描工具,进行隐蔽端口扫描;尝试确定目标操capture.pcap nmapnmap-sS
192.
168.
1.0/24nmap-O host作系统是传统的防火墙配置工具,通过规则链控制网络流量;现代系统多使用作为前端、和是查询工具,用于解析域iptables Linuxfirewall-cmd dignslookuphostDNS名、验证记录和排查问题这些高级网络工具需要深入理解网络协议才能充分发挥作用,是网络管理员和安全人员的必备工具DNS DNS软件包管理命令1查询包安装与移除RPM列出系统中所有已安装的包安装包并显示详细进度rpm-qa RPM rpm-ivh package.rpm搜索包含关键词的包升级包(如不存在则安装)rpm-qa|grep keywordrpm-Uvh package.rpm显示已安装包的详细信息只更新已安装的包rpm-qi packagerpm-Fvh package.rpm列出包中的所有文件删除包rpm-ql packagerpm-e package查找文件属于哪个包忽略依赖关系(谨慎使用)rpm-qf/path/to/file rpm--nodeps()是、和等系统使用的软件包格式和管理系统命令是直接操作RPM RedHat PackageManager RedHat CentOSFedora rpm包的工具,功能强大但不自动处理依赖关系列出所有已安装的包;安装新包,其中表示,RPM rpm-qa rpm-ivh package.rpm iinstall表示(详细输出),表示显示进度条;卸载包v verboseh rpm-e package包的查询功能非常丰富显示包信息;列出包含的文件;查找文件所RPMrpm-qi packagerpm-ql packagerpm-qf/path/to/file属的包;列出包含的文档;列出配置文件尽管命令功能全面,但在实际使用中,通常推荐rpm-qd packagerpm-qc packagerpm使用或等高级包管理工具,它们能自动处理依赖关系yum dnf软件包管理命令2搜索软件包搜索相关软件包;显示包详细信息;yum searchkeyword yuminfo package yum list列出所有已安装的包;显示可安装的包命令(的下一代版installed yumlist availableDNF yum本)使用方式基本相同,如dnf searchkeyword安装与更新安装软件包,自动解决依赖关系;更新特定包;yum install package yum update package执行全系统更新;安装软件包组安装时可使yumupdateyum groupinstallGroup Name用选项自动确认,如-y yum-y installpackage删除软件包删除软件包及其依赖;删除不再需要的依赖包;yum removepackageyumautoremove删除软件包组删除操作应谨慎进行,确保不会移除系yum groupremoveGroup Name统关键组件管理软件仓库显示启用的软件仓库;添加新yum repolistyum-config-manager--add-repo URL仓库;启用或禁用仓库软件仓yum-config-manager--enable/--disable repo_id库配置文件通常位于目录/etc/yum.repos.d/()和()是基于的高级包管理工具,提yum YellowdogUpdater Modifieddnf DandifiedYUM RPM供自动依赖解析、软件仓库管理等功能它们大大简化了软件安装和系统维护任务使用广泛,yum和开始使用作为替代,但保持了命令兼容性RHEL8Fedora dnf软件包管理命令3更新包索引安装软件包系统升级刷新软件包索引,安装指升级所有可升级apt updateapt installpackage apt upgrade获取最新的包信息和版本在定的软件包及其依赖的包,但不删除任何包apt apt安装或升级前执行此命令是良(或installpackage1package2full-upgrade apt-get好习惯同时安装多个包)更激进,会apt installdist-upgrade自动确认所有提根据需要删除某些包以完成升-y package示级删除软件包删除包apt removepackage但保留配置文件apt purge完全删除包和配置package删除不再需apt autoremove要的依赖包()是、和其他基于的发行版使用的软件包管理系统它提apt AdvancedPackage ToolDebian UbuntuDebian Linux供了一套完整的工具,用于搜索、安装、管理和更新软件包搜索包含关键词的软件包;apt searchkeyword apt显示包的详细信息;列出所有已安装的包show packageapt list--installed是用户友好的命令行前端,替代了较老的和命令,但后者仍然可用且功能更丰富的常用任apt apt-get apt-cache apt务流程是更新包索引,升级系统,安装新软件对于基于的系apt updateaptupgradeapt installpackage Debian统,掌握命令对于系统维护和软件管理至关重要apt编辑器基础VI/VIM插入模式底行模式用于输入和编辑文本内容执行保存、退出等操作在光标前插入保存文件•i•:w常用操作在光标后插入退出(如有未保存更改则失败)•a•:q命令模式在当前行下新建一行并插入或保存并退出编辑、复制、粘贴等•o•:wq:x默认启动模式,用于导航和执行命令返回命令模式强制退出不保存•ESC•:q!删除当前行•dd左、下、上、右移动光标复制当前行•h,j,k,l•yy向前后移动一个单词粘贴•w/b/•p移动到行首行尾搜索模式•0/$/•/pattern移动到文件开头结尾下一个上一个匹配•gg/G/•n/N/2314是系统中强大的文本编辑器,几乎在所有系统上都可用它的特点是模式化操作,区分命令模式和插入模式是的增强版,提供语法高亮、多级撤销、可视模式等高级Vi/Vim LinuxUnix VimVi功能尽管学习曲线陡峭,但熟练掌握后效率极高,可以完全用键盘进行复杂的编辑操作常用指令实战演练通过实际案例演练,我们可以将各种命令组合起来解决实际问题系统管理实例使用和监控系统进程,用管理服务,用设置定时任务网top pssystemctl crontab络配置实例使用配置网络接口,用检查开放端口,用测试服务可用性ip addrss-tuln curl文件处理实例使用、和等命令进行复杂的文件查找和处理;文本分析实例结合、和等工具分析日志和数据文件;脚本编写实例创建find grepsort awksed cut脚本自动执行常规任务;自动化任务实例使用和脚本实现系统监控和备份这些实战演练将帮助您将各个命令的功能融会贯通,应用到实际工作中shell cron总结与学习资源命令使用技巧掌握命令的核心功能和常用选项,学会组合使用多个命令,通过管道和重定向构建复杂操作合理使用命令别名和环境变量,提高日常效率定期练习和实际应用是提高熟练度的关键推荐学习资源入门书籍《鸟哥的私房菜》、《命令行与脚本编程大全》进阶阅读《环境高级编Linux Linuxshell UNIX程》、《系统管理指南》官方文档如页面和页面是最权威的参考资料Linux maninfo在线学习平台学习社区中国、、在线教程、命令大全Linux LinuxLinux.org StackExchange LinuxJourney Linux视频课程站、慕课网、上的频道实验平台提供交互式linuxcool.com BYouTube LinuxKatacoda学习环境Linux练习与提高建议建立个人实验环境,可使用虚拟机或云服务器制定学习计划,从基础命令开始,逐步尝试更复杂的任务Linux参与开源项目,实际应用所学知识定期回顾和强化,建立命令速查表恭喜您完成《常用指令》课程的学习!通过本课程,我们系统地介绍了系统的核心命令,从基本文件操作到高级系Linux统管理命令行是系统强大功能的入口,熟练掌握这些命令将大大提高您的工作效率和问题解决能力Linux记住,学习是一个持续的过程,需要不断实践和探索我们建议您从日常工作开始应用这些命令,逐步建立自己的Linux工作流程遇到问题时,学会查阅页面和在线资源希望本课程为您的之旅奠定坚实基础,祝您在世界man LinuxLinux中探索愉快!。
个人认证
优秀文档
获得点赞 0