Linux常用命令 (分门别类)

时间:2021-01-10 08:52:28

系统安全:


su:  用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码


sudo:  用来以其他身份来执行命令,预设的身份为root


lastlog:  用于显示系统中所有用户最近一次登录信息


lastb:  用于显示用户错误的登录列表,此指令可以发现系统的登录异常


setfacl:  是用来在命令行里设置ACL(访问控制列表)。在命令行里,一系列的命令跟随以一系列的文件名




用户管理:


id:  可以显示真实有效的用户ID(UID)和组ID(GID)


chage:  用来修改帐号和密码的有效期限


passwd:  用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码


useradd:  用于Linux中创建的新的系统用户,帐号建好之后,再用passwd设定帐号的密码


usermod:  用于修改用户的基本信息


userdel:  用于删除给定的用户,以及与用户相关的文件。若不加选项,则仅删除用户帐号,而不删除相关文件


groupadd:  用于创建一个新的工作组




文件系统:


fsck:  用于检查并且试图修复文件系统中的错误


mount:  用于加载文件系统到指定的加载点。此命令的最常用于挂载cdrom


umount:  用于卸载已经加载的文件系统


df:  用于显示磁盘分区上的可使用的磁盘空间




文件查找与比较:


find:  用来在指定目录下查找文件


diff:  在最简单的情况下,比较给定的两个文件的不同


locate:  用来查找文件或目录




文件内容的查看:


head:  用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容


tail:  用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行


more:  是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容


less:  作用与more十分相似,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览




文件处理:


ln:  用来为文件创件连接


cat:  连接文件并打印到标准输出设备上,cat经常用来显示文件的内容


touch:  一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件


unlink:  用于系统调用函数unlink去删除指定的文件。和rm命令作用一样,都是删除文件


rename:  用字符串替换的方式批量改变文件名。


dirname:  去除文件名中的非目录部分,仅显示与目录有关的内容




文件权限属性:


setfacl:  用来在命令行里设置ACL(访问控制列表)


chmod:  用来变更文件或目录的权限


chown:  改变某个文件或目录的所有者和所属的组


chgrp:  用来改变文件或目录所属的用户组




压缩与解压:


tar:  可以为linux的文件和目录创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件


zip:  用来压缩文件,或者对文件进行打包操作,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。


unzip:  用于解压缩由zip命令压缩的“.zip”压缩包。


gzip:  用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。


gunzip:  用来解压缩文件。gunzip是个使用广泛的解压缩程序,它用于解开被gzip压缩过的文件


bzip2:  用于创建和管理(包括解压缩)“.bz2”格式的压缩包


bunzip2:  解压缩由bzip2指令创建的”.bz2"压缩包




软件包管理:


yum:是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包


rpm:  是RPM软件包的管理工具


apt-get:  是Debian Linux发行版中的APT软件包管理工具。所有基于Debian的发行都使用这个包管理系统





文件传输:


ftp:  用命令的方式来控制在本地机和远程机之间传送文件


scp:  用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,scp传输是加密的





目录操作:


cd:  用来切换工作目录至dirname。其中dirName表示法可为绝对路径或相对路径


mv:  用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中


rm:  可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉


pwd:  以绝对路径的方式显示用户当前工作目录


tree:  以树状图列出目录的内容


cp:  用来将一个或多个源文件或者目录复制到指定的目的文件或目录


ls:  用来显示目标列表


mkdir:  用来创建目录


rmdir:  用来删除空目录(一般使用rm)





进程管理:


w:  用于显示已经登陆系统的用户列表,并显示用户正在执行的指令


ps:  用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序


kill:  用来删除执行中的程序或工作


pkill:  按照进程名杀死进程


killall:  按照进程名杀死进程


top:  可以实时动态地查看系统的整体运行情况


at:  用于在指定时间执行命令


crontab:用来提交和管理用户的需要周期性执行的任务


atq:  显示系统中待执行的任务列表,也就是列出当前用户的at任务列表


pstree:  以树状图的方式展现进程之间的派生关系,显示效果比较直观


grep:  是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来


pgrep:  以名称为依据从运行进程队列中查找进程,并显示查找到的进程id,同时也支持类似grep指令中的匹配模式





系统关机重启:


shutdown:  用来系统关机命令


reboot:  用来重新启动正在运行的Linux操作系统





网络配置:


hostname:  用于显示和设置系统的主机名称


ifconfig:  用于配置和显示Linux内核中网络接口的网络参数





网络应用:


curl:  是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载


telnet:  用于登录远程主机,对远程主机进行管理


mail:  是命令行的电子邮件发送和接收工具。操作的界面不像elm或pine那么容易使用,但功能非常完整


elinks:  能实现一个纯文本界面的WWW浏览器,操作方式与“lynx”类似。


lynx:  是纯文本模式的网页浏览器,不支持图形、音视频等多媒体信息。





网络测试:


ping:  用来测试主机之间网络的连通性


host:  是常用的分析域名查询工具,可以用来测试域名系统工作是否正常


netstat:  用来打印Linux中网络系统的状态信息,可让你得知整个Linux系统的网络情况





常用工具:


who:  显示目前登录系统的用户信息。执行who命令可得知目前有那些用户登入系统


man:  是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。


users:  用于显示当前登录系统的所有用户的用户列表


date:  显示或设置系统时间与日期。


Screen:  是一款由GNU计划开发的用于命令行终端切换的*软件,用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间*切换。


clear:  用于清除当前屏幕终端上的任何信息。