77个经常使用Linux命令和工具 linux
Linux管理员不能单靠GUI图形界面吃饭。这就是咱们编辑这篇最实用Linux命令手册的缘由。这个指南是特别为Linux管理员和系统管理员 设计的,聚集了最有用的一些工具作为他们平常维护的参考手册。经过学习这些简单的工具,那些本来惧怕命令行的人也能够变成一个脚本高手,从而经过执行 kernal命令和shell命令来最大限度的发挥linux的做用。请善用咱们的指南,有任何Linux方面的问 题或者须要寻找相关答案请务必到咱们 的TechTarget中国服务器论坛来发帖子交流。shell
alias数据库
用一个被定义好的与某命令关联的缩略名来运行一个命令或者一系列UNIX命令。编程
如何在LINUX下实用alias命令。浏览器
apt-get缓存
Apt-get是一个用来自动更新DEBIAN系统,获取而后安装DEBIAN补丁包/程序的工具。安全
若是在UBUNTU服务器上用”aptitude“和”apt-get”来管理程序。服务器
理解Debian的归档和apt-get。网络
使用apt-get来更新你的Debian机器。less
Aspell
GNU Aspell是一个免费开源的拼写检查器,它被设计来替代Ispell。它能够看成一个字库来使用,也能够作为一个单独的拼写检查器。
如何使用Aspell来检查拼写。
AWK, Gawk
这是一个用来处理文本的编程语言工具。AWK工具的语言有很大一部分借鉴了在许多领域经常使用的shell编程语言,固然AWK的语法在很大程度上都是本身原创的。
学习如何使用AWK工具
Gawk是AWK编程语言在GNU项目下的版本。
bzip2
这是一个用来高比率压缩和解压缩文件的简便快速的开源程序。
如何在LINUX下使用bzip2.
更多的关于使用bzip2压缩程序的使用说明。
cat
一个UNIX/LINUX命令,原来读取,更改或者合并文本文件,最常被用来显示文件内容。
如何在LINUX下用CAT命令显示文件内容。
一篇关于cat命令能作些什么的文章。
cd
CD命令用来在LINUX下改变当天目录,能够方便地在几个目录见跳转。它和MS-DOS中的CD和CHDIR命令很类似。
查看更多关于如何使用CD命令来改变目录的内容。
chmod
Chmod用来giabian对一个或者多个文件的访问模式(权限)。只有一个文件的全部人或者特权用户能够更改这个权限。
查看关于使用chmod命令更改文件访问权限的例子。
chown
Chown命令用来更改文件或者组的全部权,还有批量更改一个目录下的全部对象全部权的选项,另外还能查看正在进行修改属性的对象的相关信息。
学习如何用chown命令更改文件全部权。
cmp
Cmp工具用来对比两个文件的内容,而且将结果用标准格式输出。默认地,若是两个文件彻底相同,cmp将不返回任何结果;若是两个文件不一样,第一个发生不一样之处的字节数和行数将作为结果被返回。
查看IBM使用cmp命令的例子。
comm
Comm命令用来选择两个已排序的文件的公共行。输入结果分为三栏,从左到右依次为:只在文件1中的行,只在文件2中的行,和既在文件1又在文件2中的行。
关于用comm命令对比行的更多信息。
关于使用comm命令的详细指南。
cp
Cp命令用来复制文件和目录,而且若是目标目录是不一样的名字,能够将整个目录同步复制到目的地。
查看若是用cp命令复制LINUX文件和目录。
cpio
Cpio命令用来将文件复制进出归档存储器及目录,一个文件所包含的关于它们的附加信息,例如它们的文件名、全部人、更改时间和访问权限。归档位置能够是磁盘中的其它文件,或者一盒磁带。Cpio有三种操做模式,比tar命令更高效。
学习若是用cpio命令执行一个unix到linux迁移的文件移动。
查看如何用cpio命令备份文件。
CRON
CRON是一个LINUX系统进程,它能够在指定的时间运行一个程序。要使用CRON,用户必须准备一个文本文件,包含有什么程序将在什么时间用CRON执行的信息。而后,crontab命令时间程序就被用来加载这个描述了CRON任务的文本文件,从而执行CRON。
使用CRON命令在指定的时间执行命令。
date
Date命令用来设置系统日期和时间。另外还有个有用的地方就是在用脚本文件工做的时候能够输出/打印当前时间信息。
来自IBM的一系列关于用date命令设置日期和时间的例子。
declare
Declare命令用来声明变量,赋予变量属性,或者更改变量属性。
用delcare命令声明变量的例子。
df
Df命令用来显示某文件(作为命令的参数)所在的文件系统的可用磁盘空间。若是不跟文件名作为参数,则显示整个文件系统的可用磁盘空间。
更多关于使用df命令显示可用磁盘空间的信息。
echo
Echo用来重复或者将一个字符串写到标准输出。
更多关于在shell脚本中使用echo命令的信息。
enable
Enable命令用来中止或者启动打印机队列设备。
如何使用enable命令来启动LP打印机的例子。
env
Env用来为执行命令设置环境,或者显示当前环境和它的参数。
用env命令更改环境的例子。
eval
Eval命令能够计算几个参数而后求出一个单独的命令,在生成这些参数的状态。
关于用eval命令求出参数结果的更多信息。
exec
Exec命令用来输入命令替代正在运行的母进程。这个命令将输入的参数作为一个或者多个子进程来执行。
更多关于用exec替换母进程的例子。
exit
Exit命令用来终止一个脚本,而后返回值给母进程。
更多用exec终止脚本运行的例子。
expect
Expect命令用来和脚本中另外一个相互做用的进程通话,而且等待响应,常常用来在一个字符串中找到特定匹配的字符。
用expect寻求响应。
export
Export命令用来将文件转换成另外一种格式。一旦一个文件被转换了,它就能够被支持这个格式的程序访问。
关于用export命令从数据库中导出数据的例子。
find
Find命令用来在目录树中寻找符合某种条件的文件,包括name,type,exec,size,mtime和user等参数作为条件。
用find命令迅速定位文件
for, while
For和while用来执行或者重复循环知足条件的一系列动做。
用for命令循环执行选项动做。
用while命令循环执行选项动做。
free
Free命令用来显示空闲和已使用的物理内存大小及系统的交换分区大小,以及kernel使用的缓存大小。
学习若是用free命令来优化计算机的内存使用。
gawk
请看 AWK.
grep
Grep命令用来寻找包含某字符串的文件,还能够将字符串用指定的值替换。这是在LINUX下搜索文件的一个好办法。
用grep搜索文件的例子。
gzip
Gzip是GNU环境中用来压缩文件的开源程序,能将服务器上的网页在后台压缩,而后在浏览器上解压缩显示。
如今还被普遍用于流媒体文件的压缩,能够同时合并并压缩多个流媒体文件。
用gzip压缩文件的例子。
ifconfig
Ifconfig用来配置网络接口。它在启动时被用来设置网络接口。以后,它通常只有在排错或者系统调整的时候才会被用到。
用ifconfig配置网络的例子。
用ifconfig查找linux的网络配置问题。
ifup
Ifup用来配置网络接口而且启动一个网络链接。
关于ifup命令配置网络接口的更多信息。
ifdown
Ifdown命令用来关闭一个网络接口和禁用一个网络链接。
关于用ifdown命令关闭网络的更多信息。
less, more
Less命令使管理员能够回滚浏览配置和错误日志文件,将文本文件一次显示一屏,能够方便地在文件中先后移动。比其它命令更加灵活。
查看几个用less命令查看的不一样文件。
和less命令相似,more命令能够将文件一次显示一屏,可是在先后移动查看文件方面没有less方便。
查看一个用more命令显示文本的例子。
locate, slocate
Locate命令用来读取一个或多个数据库,而后将和目标参数匹配的文件名输出。
用locate迅速搜索文件/目录。
和locate命令同样,slocate,或者叫安全的locate,提供了索引和快速搜索文件的方法,同时还能安全的存储文件权限和全部人信息,这样没有被受权的用户将没法查看这些文件。
一个用slocate命令安全快速索引文件的例子。
lft
Lft命令和traceroute相似,用来肯定链接路由,可是它提供了更多用来为链接排错或者查找box/系统位置的信息。它能显示路由数据包和文件类型。
用lft命令查看路由数据包的更多信息。
ln
ln命令能够经过硬链接来建立一个文件名,从而让多个用户共享一个文件。
Ln建立硬链接文件的例子。
使用ln命令的更多例子。
ls
Ls命令用来列出当前路径的文件和目录,管理员能够用这个命令肯定配置文件最后一次被编辑的时间。
这篇文章也在讨论ls命令。
用ls命令列出文件和目录的例子。
man
作为manual的简写,man命令容许一个用户以指定的方式显示linux系统内置的用户手册,包括命令文档和其它系统功能介绍。
这篇文章也有关于man命令的讨论。
查看若是使用man命令。
查看man命令显示页面格式的例子。
mc
这是一个菜单式的shell,为unix系统提供基于文本的文件管理方式。
用mc管理文件的一个扩展指南。
more
请看前面less命令的介绍。
neat
Neat是GNOME图形界面下的管理工具,可让管理员指定设置一块网卡须要的信息,另外还有其它一些功能。
用neat命令配置一个NTL猫。
配置unix和linux系统见网络链接时neat发挥的做用。
netconfig, netcfg
Netconfig命令用来配置网络,启用网卡而且显示一系列配置所须要提供的信息在屏幕上。
用红帽子netcfg命令配置网络。
netstat
Netstat提供了什么协议正在被使用及当前TCP/IP网络链接的信息和统计。一个有用的功能就是能找出什么进程和程序在计算机上被激活并参与了网络通信。
用netstat命令查看网络状态的更多信息。
nslookup
Nslookup容许用户输入一个主机名而后找到相应的IP地址。也支持相反的经过IP地址找主机名的过程。
微软的提供的关于如何用NSLOOKUP查找IP地址的更多信息。
od
Od用来将二进制文件输出为八进制格式文件来标准化输出。
用od导出文件的例子。
更多来自IBM的od命令说明。
passwd
Passwd用来更新用户的登录口令(更改当前密码)。
一些IBM的关于用passwd更改密码的例子。
ping
Ping容许用户验证某个IP地址是否存在及它是否接收请求数据包。能够用来测试网络连通性和响应时间,及用户尝试链接的主机的工做状态。
IBM的关于用PING验证IP地址的例子。
ps
PS用来报告系统当前的进程状态。
一些ps命令的实例。
pwd
Pwd(打印工做目录)命令用来显示当前工做的所在目录。这时一个基本的linux命令。
学习$path和pwd命令之间的不一样。
用pwd来显示当前的工做目录。
read
Read用来从标准输入中读取文本的一行并将输入行的字段的值指定给shell变量用来进一步处理。
来自IBM的read使用例子。
RPM
红帽子包管理器(RPM)是命令行驱动的程序,用来安装,卸载及管理LINUX的软件安装包。
RPM使用白皮书。
Yum和RPM的不一样。
用RPM安装软件的例子。
rsync
Rsync命令用来将一个磁盘或者文件经过网络同步到另外一个磁盘或者文件上。和rcp相似,它也有不少选项可用。
一篇使用rsync备份数据的文章。
如何用rsync来备份linux目录。
screen
GNU环境下的screen工具是一个终端多窗口程序,用户能够用一个单独的终端窗口俩运行多个应用程序。
用scrren运行多个窗口和其它相关应用的指南。
一篇关于使用scrren的说明。
sdiff
sdiff命令能够用来对比两个文件的不一样之处,而后以并排的格式列出不一样点。随后它能合并文件和输入结果到一个输出文件中。
用sdiff对比文件的例子。
更多来自IBM的关于sdiff的例子。
sed
Sed是一个能够过滤文本的流编辑器,这时它和其它编辑器不一样之处。Sed分析输入文本和对它进行的操做而后输出更改的部分。常常用在执行匹配参数的文件的某一部分或菏泽是替代文件中符合指定字符串的某部分。
用sed执行和替代文件某部分的例子。
来自IBM的关于使用sed过滤的例子。
shutdown
Shutdown是一个用来关机的命令,它还能够经过增长参数如-h来在关机后终止操做系统,加-r来重启。
用shutdown命令关机或者终止一台计算机。
slocate
请看locate部分。
Snort
Snort是一个开源的网络入侵检测系统,还能够经过抓包来监控网络流量,它检查每一个数据包来侦测危险的负载或者可疑的数据。它是基于libpcap.
用snort阻止黑客。
更多来自红帽子的snort使用说明信息。
sort
用来将文本行按字母顺序或者数字数序排序;支持多个关键字作为排序依据。
用sort将行排序的例子。
更多的关于多关键字排序的例子。
sudo
Sudo容许系统管理员赋予特定用户在root级别运行某个命令的权限,并记录全部命令和参数。
一个用sudo命令赋予用户权限的指南。
SSH
SSH是一个用来安全地远程登录计算机的命令行界面,常被网管用来远程控制服务器。
一篇用SSH安全远程登录的指南。
tar
Tar程序可疑用来把多个文件压缩成一个档案,或者将一个档案解压缩成多个文件。
用tar建立档案文件的例子。
TOP
TOP是一系列网络协议,用来提供进程信息,它能显示系统中占用内存最大的任务。TOP能够根据CPU使用率,内存使用率和运行时间等条件来排序任务。
用TOP监控系统进程。
tr
用来从一个文本流中替换或者删除字符,并写入标准输出,可是不接受文件名作为参数-仅支持标准输入。
来自IBM的关于用tr命令替换字符的例子。
traceroute
Traceroute跟踪并记录两台计算机间经过互联网通信的路径,对于网络/路由器故障排除颇有用。就算域不工做或者不存在了,经过IP也能够来跟踪路由。
用traceroute来诊断网络故障的指南。
uname
Uname显示当天操做系统的名称,并能输入相关系统信息。
用uname查看当前曹组系统信息的例子。
uniq
A tip from IBM on removing redundant lines with uniq.
Uniq用来对比文件中的行,而且删除/报告每一个重复的行。
用uniq命令删除重复行。
来自IBM的用uniq删除重复行的文章。
vi
VI是一个文本编辑器,容许用户只用键盘来控制系统,而不须要鼠标或者其它输入工具。
一个完成的VI使用向导,用键盘来控制系统。
vmstat
Vmstat用来获取系统内容的快照,报告诸如进程,内存,页面文件和CPU状态等信息。对管理员来讲,这时迅速肯定系统故障的好办法。
如何用vmstat时刻监控LINUX的性能状态。
用vmstat查看系统内存使用的例子。
wc
Wc用来计算文件中的字符数,行数和字节数,若是选择多个文件也能计算多个文件中的相应对象数量。
来自IBM的用wc计算字符数的例子。
wget
Wget是一个用来从http,https和ftp网站上获取文件的网络工具。它并不是工做在交互模式下,在用户注销后仍然能够在后台运行。它能在本地建立远程站点的副本,也能从新建立原始站点。
用wget建立镜像站点的例子。
while
请看for。
whoami
Whoami用来输出当前登录用户的用户名到标准输出。
来自IBM的关于用whoami查找当前登录账号信息的例子。
xargs
Xargs从标准输入读取,建立并执行指定命令。输入中的空行将被忽略。
来自IBM的关于用xargs运行命令的例子。