Linux基础之常用命令详解.docx
- 文档编号:8955261
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:32
- 大小:877.36KB
Linux基础之常用命令详解.docx
《Linux基础之常用命令详解.docx》由会员分享,可在线阅读,更多相关《Linux基础之常用命令详解.docx(32页珍藏版)》请在冰点文库上搜索。
Linux基础之常用命令详解
Linux常用命令详解
一、路径:
执行命令前必须要考虑的一步是命令的路径,若是路径错误或是没有正确的指定,可能导致错误
的执行或是找不到该命令。
要知道设置的路径,可执行以下命令:
一般而言,本书的命令位于/bin、usr/bin、/sbin、/usr/sbin之中。
若读者执行了命令却出现“commandnotfind”或是“命令不存在”的字样,就必须要确定该命令的位置是否在命令的路径中,或是系统上根本没有安装该套件。
二、命令顺序:
若在shell内置的命令/bin以及/usr/bin之下都出现了命令pwd,那当我们执行该命令时,会执行哪一个?
答案是第一优先执行shell内置的命令,再执行路径中的设置;因此若有相同名称的命令时,必须要注意顺序设置,或是直接输入完整路径。
三、参数(或称选项)顺序:
一般除了特殊情况,参数是没有顺序的。
举例而言,输入“–a–v”与输入“–v–a”以及“–av”的执行效果是相同的。
但若该参数后指定了要接的文件或特殊对象,如“–acmd1–vcmd2”,则不能任意改变选项顺序。
四、常用参数:
下面所列的是常见的参数(选项)意义:
--help,-h显示帮助信息
--version,-V显示版本信息
-v繁琐模式(显示命令完整的执行过程)
-i交谈模式(指定界面)
-l长列表输出格式
-q,-s安静模式(不显示任何输出或错误信息)
-R递归模式(连同目录下所有文件和子目录一起处理)
-z压缩
五、命令的结合与定向:
命令中除了一般命令外,还有管道(或称途径)(|)与定向(>或>>)。
管道(途径)的用法:
“命令一[选项]”|“命令二[选项]”,也就是将“命令一[选项]”的输出结果传到“命令二[选
项]”,通过命令二的处理之后才输出到标准输出(屏幕)上。
比如“ls/etc”会列出etc下的所有文件,
若加上“|less”,也就是“ls/etc|less”,则会将“ls/etc”的结果通过less分页输出。
定向的用法:
将结果定向到命令的输出设备,一般不加文件名意为将结果输出到屏幕,若是在定向后加上文件
名,则会将命令的执行结果输出到定向的文件,例如“ls>temp.txt”,就会将ls的结果输出到文件
temp.txt中。
“>”与“>>”的差异在于前者是覆盖,而后者是附加。
六、命令中的命令:
许多命令在执行后,会进入该命令的操作模式,如fdisk、pine、top等,进入后我们必须要使用该
命令中的命令,才能正确执行;而一般要退出该命令,可以输入exit、q、quit或是按【Ctrl+C】组合
键。
1、adduser(字意:
adduser)增加一个系统用户。
在RedHat中,adduser命令实际上是useradd
命令的一个符号连接,指向/usr/sbin/useradd。
语法:
adduser[选项]用户名
选项:
-d<登陆目录>指定新用户登陆的起始目录,默认为/home
-e<有效期限>指定用户的有效期限,格式为YYYY-MM-DD
-g<用户组>指定用户所属的组
-p<密码>为新用户设置密码
-r建立系统用户
示例:
One.创建一个新用户frisen,设定登录起始目录为/home/guest,密码123456:
Two.创建一个指定目录、有效期和归属组的账户frisen2
Three.创建一个系统账户frisen3,并指定登录起始目录,同时账户密码设为123456
2、alias(字意:
alias)为Linux系统中的命令定义别名,以简化操作。
语法:
alias[别名=‘命令’]
选项:
无
示例:
One.列出目前所有的别名设置:
2、alias(字意:
alias)为Linux系统中的命令定义别名,以简化操作。
语法:
alias[别名=‘命令’]
选项:
无
示例:
One.列出目前所有的别名设置:
Two.将ps-ef的别名设置为ps
Three.为一个复杂命令设置别名:
注意:
alias的优先权高于PATH(系统查找的路径),因此若是我们设置了与系统命令相同的别名,会
以我们设置的别名为准。
Shell环境中设置的别名仅在该次登陆过程中有效,若要所定义的命令别名每次登陆时都有效,
需要将自定义的别名输入到文件.profile(bash)或.cshrc(tcsh)中,以保证每次启动时自动加载所定义的命
令别名。
3、at(字意:
atsometime)在指定的时间执行特定的命令。
时间以24小时制指定,格式为HH:
MM。
默认情况下,任何用户都可以使用at服务,但这样是不安全的。
如果系统中存在at.allow,则只
有列在文件中的用户才可以使用at服务。
如果系统中存在at.deny,则列在文件中的用户不可以使用at
服务,其他用户则可以。
语法:
at[选项][时间]
选项:
-d<作业编号>将待执行的作业删除
-f<文件>从文件中读取要执行的命令
-m将at执行的结果以E-mail的方式返回
示例:
One.如果想在晚上21:
00的时候让屏幕显示出“Hello,world”字样,可以现在Shell提示符下输入
接着at命令显示一个“at>”的提示符,继续输入:
最后用组合键Ctrl+D结束输入。
注意不要连续按Ctrl+D键两次,否则就自动退出系统了。
Two.如果想在晚上22:
00的时候播放CD—ROM里面的音乐,可以按照上面的步骤重新操作一遍,不
同的是在第一次出现“at>”提示符后应该输入命令“cdplay”。
4、bzip2(字意:
Burrows—Wheelerzipfile)对文件进行压缩或解压。
压缩后和解压前的文件类
型为“.bz2”类型,默认操作为压缩。
bzip2是一个无损压缩软件,具有高质量的数据压缩能力。
bzip2
可对任何普通文件进行压缩,也可以对其他压缩工具产生的文件(xxx.gz)进行二次压缩,但是不能对
xxx.bz2的压缩文件进行二次压缩,也不能对目录文件进行压缩。
bizp2对压缩较大的文件效果相当好,
但若是将压缩文件再压缩,或是小的文本文件,则未必会有好的效果,甚至会出现比原来文件还有大
的情况。
语法:
bzip2[选项]文件名
选项:
-d解压文件,需指定文件名
-k压缩或解压缩时保留原文件,默认为删除
-f强制覆盖。
在压缩或解压过程中,如果产生的目标文件名在当前目录中已经存在则
强制覆盖。
默认不覆盖直接退出。
-<数字>用指定的数字调整压缩的速度,-1或--fast表示最快压缩(低压缩比),-9或--best
表示最慢压缩(高压缩比),系统默认值为6。
-v显示命令执行的详细过程
示例:
One.压缩时指定压缩速率并保留原文件:
(压缩后文件名为writeinfo.c.bz2,.bz2为类型名)
Two.将当前目录下所有以ge开头的文件进行压缩,并显示压缩比(也即显示命令执行过程):
(对比上例,压缩的源文件getarg.c、getarg.h已被删除)
Three.以高压缩比压缩当前目录下的所有内容:
Four.将压缩文件解压:
5、cal(字意:
calendar)简单的显示月历。
命令cal、cdp如同Windows下计算器、画图等实用
性小程序。
用一个单一的选项指定要显示的年份(1~9999)时,年份必须被完全指出,例如:
“cal10”
不会显示2010年的年历。
默认一年从1月1日开始。
语法:
cal[选项]
cal[月份][年份]
选项:
-3显示本月与前后两个月的月历
-m显示月历时把星期一作为一周的第一天,默认星期日
-y显示本年度所有月份
示例:
One.显示本月月历:
Two.显示本月与前后两个月的月历,并把星期一作为一周的第一天(对比):
Three.显示2008年8月份的月历:
(查看过去或将来特定时间的月历)
6、cat(字意:
concatenate)串接文件到指定文件或在标准输出上显示文件内容。
语法:
cat[选项][文件名]
选项:
-n对输出的行数编号
-b和-n类似,但对空白行不编号
-s将连续两行以上的空白行替换成一行空白
-E在每行的结尾显示“$”符号
-T将文件中的Tab键显示为“^I”
-t等同于“-vT”
-A显示全部,等同于“-vET”
示例:
One.从键盘接收数据并在屏幕上打印:
说明:
cat命令不指明参数可以从标准输入接收数据,同时又没有指定重定向文件,所以从标准输入接
收的数据又输出到标准输出上。
Two.查看文件内容,并对输出的内容进行编号且在每行结尾显示“$”符号:
Three.同时显示多个文件的内容,在每一行的末尾以“$”结束且将Tab键显示为“^I”:
Four.把文件example1.c输入到文件example2.c,带行号,不显示空白行:
说明:
如果重定向文件example2.c不存在,则创建之。
Five.将hello.c的内容附加到hello2.c上:
注意:
串接的文件必须存在,且不能对目录文件进行串接
7、cd(字意:
changedirectory)切换工作目录。
在Linux中每个文件都被保存在一个目录中,目
录中还可以包含子目录,这些子目录进一步可以包含文件和下一层子目录;文件系统呈树形结构,目
录就是树的枝干,不论目录分支有多远都链接在根目录上,根目录是整个文件系统的起点,所有的目
录和文件都连在根目录上。
“~”表示当前用户的主目录(如/home/user1),“.”表示当前目录,“..”表
示当前目录的上一层目录。
语法:
cd[目的目录]
选项:
无
示例:
One.切换到指定目录/home/frisen:
Two.切换到自己的主目录
8、chmod(字意:
changemode)更改文件或目录的访问权限。
Linux系统提供了以字符和
八进制两种方法,chmod命令仅限文件所有者和超级用户使用。
语法:
chmod[选项]文件名
选项:
-c只有在文件或目录权限更改的前提下,才显示更改信息
-R递归处理。
若目标文件为目录文件,则以递归形式更改
目录下所有文件的权限,并显示更改信息。
--reference=文件名或目录名设置成与指定的文件或目录相同的权限
示例:
One.将文件getarg.h的权限设置为所有用户(a=u+g+o)具有读、写、执行权限:
<两种方法>
Two.使目录/test下的所有文件具有可读可写可执行权限:
9、chown(字意:
changeowner)改变文件的所有者或用户组,或两者同时改变。
文件的属性包
括文件属主(所有者)和属组,文件创建者默认为文件的属主,文件属组默认为文件创建者所在的工作组,
属主用户对自己创建的文件具有最大的权限,其操作权限可以和超级用户相媲美;一个用户可以位于
多个组内,因此一个文件也可以位于多个组内,同一组内的用户对文件具有共享的权限。
文件与目录的用户与组,是Linux系统中极其重要的权限控制。
在部分Linux版本中,不支持使
用“.”来作用户与组的分隔,而必须使用“:
”来分隔。
语法:
chown[选项][用户]:
[组]文件名
选项:
-c只显示更改部分的信息
-R递归处理,将指定目录下的所有文件及子目录一并处理
--reference=文件名或目录名用指定文件或目录的组来改变目标文件或目录的组用户
示例:
One.将文件getarg.h的属主改为frisen,属组改为group:
<属主frisen和属组group必须存在>
Two.将目录/test下所有以writeinfo.开头的文件属组改为group,不改变属主:
<两种不同命令表示法>
Three.只改变文件的所有者为frisen,属组不变:
12、date(字意:
date)显示或设置系统的时间、日期。
语法:
date[选项][日期或时间格式]
选项:
-d<字符串>显示字符串所表示的时间。
加ago表示之前的时间,不加表示之后的时间
-s<字符串>设置字符串所代表的时间
-u显示格林威治标准时间
格式:
%j显示该年的第几天
%U显示该年的第几周
%Z显示时区
示例:
显示当前系统的日期时间:
将当前系统日期时间修改为2010年12月31日23点59分:
显示一年前与一年后今天的日期:
设置日期的现实格式:
显示格林威治标准时间:
13、df(字意:
displayfilesystem)显示每个文件系统所使用的磁盘空间情况。
文件或磁盘设备:
若为磁盘设备则指定/dev下的路径;若为文件则为该文件所在的设备。
语法:
df[选项][文件或磁盘设备]
选项:
-a显示所有文件系统的情况
-h以可读性较高的方式显示信息
-i显示inode节点信息
-m以1M为单位显示
-t<文件系统类型>(或“-t=类型”)只显示指定文件系统的磁盘信息
示例:
显示当前文件系统使用情况:
说明:
第一列显示文件系统所在的设备名称和分区;
第二列显示各分区数据大小,以1024作为基本的数据块;
第三列显示已用数据块大小;
第四列显示可用数据块大小,但第三列与第四列数据块之和不一定等于第二列;
第五列显示使用的百分比;
最后一列给出了文件系统的挂载目录。
以较易读取的方式显示:
显示当前所有的文件系统信息:
显示所有文件系统的inode信息:
以MB为单位显示/home所在文件系统的使用情况:
14、diff(字意:
difference)比较两个不同文件或不同目录下两个同名文件的功能,并生成补丁文件。
语法:
diff[选项][文件1][文件2]
说明:
若文件名是“-”或没有给出,则表示从标准输入读入内容。
选项:
-a将比较文件都看做文本文件比较
-c旧版上下文格式。
显示全部内容,并列出不同之处
-u新版上下文格式。
仅列出不同之处
-q只显示文件有无差异,不显示详细信息
-n将比较结果以RCS的格式显示
-N检查文件的不同,一般用于确保补丁文件正确的处理
-y以并列的方式显示比较结果
示例:
<先显示a1.txt、a2.txt的内容>
说明:
补丁头:
以----/++++的两行用来表示要打补丁的文件;----开头表示旧文件,++++开头表示新文
件。
一个补丁文件中可能包含多个----/++++开头的节,每一个用来打一个补丁。
所以在一个补丁文件
中可能包含好多个补丁。
块:
补丁中要修改的地方。
通常以@@开始,结束于另一个块的开始或一个新的补丁头。
块的
第一列+号表示这一行是要加上的,-号表示这一行是要删除的,否则表示该行只是引用的而不需要修
改。
确认两文件是否有差异:
15、du(displayunits)显示文件或目录所占用的磁盘空间,可一次指定多个文件或目录。
如果
指令中未指定文件或目录,将显示当前目录的磁盘占用情况;使用du命令得到的结果是指一个文件或
目录所占用磁盘空间的大小,与文件或目录得实际大小不一定相等。
例如一文件的实际大小为10KB,
却分配1024KB的磁盘空间,则du命令输出的结果是基于占用空间大小的,为1024KB。
本文档由Linux公社整理
16、echo(字意:
echo)显示文字。
echo是字符串输出常用命令,可将字符串输出至屏幕、
文件或是其他终端机。
语法:
echo[选项]字符串
选项:
-e若字符串中出现以下字符则以特殊方式处理:
\a发出beep声(警告声)
\f换行且光标移动到上一行的相同位置
\n换行(此时光标移至行首)
\t插入Tab制表符
\\显示‘\’字符
-n不在一行最后自动换行
17、eject(字意:
eject)弹出设备,如光驱
语法:
eject[选项][设备]
说明:
eject还可应用于其他抽取式设备;若设备已加载,则eject命令首先会卸载该
设备,然后再弹出。
设备可以是驱动程序名称,也可是挂载点。
另外有的设备
可能不支持这个命令。
选项:
-c<光驱编号>选择光驱,编号依次为0、1、2……
-d仅显示预设的设备,不实际执行动作
-r退出光盘
-t关闭光盘托盘,即收回光盘
-v显示详细信息
示例:
显示默认的设备:
弹出光盘:
18、exit(字意:
exit)退出当前的Shell环境
语法:
exit
说明:
若我们在终端机运行exit,则会注销系统。
选项:
无
示例:
若我们执行/bin/bath进入另一个Shell,输入exit则会返回原来的Shell:
19、export(字意:
export)设置或显示环境变量。
在Shell中执行程序时,Shell会提供一组环
境变量。
export可新增、修改、删除或输出这些环境变量,供其他程序使用。
export命令的作用仅限于
该次登陆操作。
export可声明变量,特别在Shell程序编写时需要经常使用。
语法:
export[选项][环境变量=[变量值]]
选项:
-f设置变量名称为某一函数的名称
-n删除指定的环境变量
示例:
One.输出当前的环境变量:
Two.声明Fault变量的内容为abc:
20、fdisk(字意:
formatteddisk)修改磁盘分区
说明:
fdisk是用来为磁盘分区的工具。
磁盘需要被分区、格式化、挂接后方可使用,因此,fdisk是使
用磁盘的第一步。
一个硬盘可以分成几个区,每个分区如同一个独立的硬盘。
一个磁盘可以划分为一个或多个逻辑
磁盘,每个逻辑磁盘成为一个分区;分区的划分信息用分区表记录,而分区表存放在磁盘编号为0的
扇区内。
fdisk命令就是用来操作磁盘分区表的。
fdisk命令处理的设备通常是如下形式的:
/dev/hda、/dev/hdb、/dev/sda、/dev/sdb等。
其中,/dev/hd[a-h]
表示IDE硬盘,/dev/sd[a-h]表示SCSI硬盘,/dev/ed[a-h]表示ESDI硬盘,/dev/xd[a-h]表示XT硬盘。
一个设备的名称(或称作代号)表示整个硬盘,而分区则用设备名加一个分区号表示,如/dev/sda1
表示系统中第一代SCSI硬盘的第一个分区。
语法:
fdisk[选项][设备名称]
选项:
-b<扇区大小>以指定扇区大小显示分区情况
-l列出分区表情况
-u搭配“-l”选项,则用扇区数目取代柱面数目来表示每个分区的起始地址
进入fdisk的操作:
输入‘m’可查看各个命令选项的说明(详情略)
示例:
查看系统中所有磁盘及分区情况:
说明:
heads磁头;sectors/track扇区;cylinders柱面。
这里以柱面为单位显示,每个柱面大小为8225280
字节。
硬盘包括两个分区/dev/sda1,/dev/sda2;“*”表示可启动分区,分区的起始柱面为1,结束柱面
为1305,共有10482381个区块(一种分区大小单位),分区的文件系统编号为83(表示ext2/ext3文
件系统),文件系统类型为Linux。
最后一行为分区/dev/sda2的相关信息。
查看系统中的所有分区情况,以扇区为单位:
带有“-u”选项的fdisk命令,会以扇区为单位,每个扇区大小为512字节。
查看硬盘/dev/sda的分区情况,指定扇区大小为1024KB:
21.find(字意:
find)查找文件或目录
语法:
find[路径][选项]
说明:
必须以绝对路径或相对路径指定查找位置,若在当前目录查询,应用“./”表示,否则会出
错。
在利用通配符查找文件时,例如,查找日志文件(*.log)时,在有些系统上需要加上引号,
否则会提示错误。
选项:
-empty查找空文件或空目录
-name<字符串或模式>查找指定名称的文件或目录
-mtime<小时>查找在指定时间内更改过的文件或目录,单位小时
-mmin<分钟>查找在指定时间内更改过的文件或目录,单位分钟
-ls将查找到的文件或目录以ls的输出格式显示
-perm<权限数值>查找指定权限数值的文件或目录
-size
c、w、k、M、G;其中b代表文件块,默认一块
大小512字节;c代表字节;w代表双字节;k代
表1024KB。
若不指定单位则表示以字节为单位。
-type<文件类型>查找指定文件类型的文件。
文件类型的值可为b
(块文件)、c(字符文件)、d(目录)、l(符号链接)、
p(命名管道)、f(普通文件)。
示例:
我们知道Linux中关于服务器的配置文件都在/etc目录下,因此可借助find命令查看ftp服
务器配置信息的具体位置:
根据文件大小查找文件,若用户不清楚文件名,可利用-size
find./-size1000c(c表示要查找的文件的大小以字节为单位)
find./-size+1000c(查找大于1000字节的文件)
find./-size-1000c(查询小于1000字节的文件)
find./-size+1000c-and-2000c(查找介于1000到2000字节间的文件)
利用综合属性查找文件:
说明:
逻辑与(-a或-and)查找同时符合多个条件的文件;逻辑或(-o或-or)查找符合任一
条件的文件;逻辑非(-!
)表示不符合条件的文件。
当使用多个逻辑选项时,可使用括号括
起。
为避免Shell本身对括号引起误解,在括号前需加转义字符‘\’去除括号的意义。
查找同时符合3个条件的文件:
22、free(字意:
free)显示内存使用情况。
显示内容包括
物理内存(插在主板上的内存)、虚拟内存(SWAP,硬盘上的一块区域)、共享内存区,以
及系统核心使用的缓冲区等.
语法:
free[][]
选项:
-t显示内存总和(物理内存和虚拟内存)
-s<时间>以指定时间(单位秒)为周期持续观察内存使用情况
示例:
显示当前内存的使用情况:
说明:
第一行:
Mem物理内存;shared表示废弃的内存数;buffers内存数为52852;cached
内存数为84092。
其中total=used+free。
buffersBufferCache内存数。
cachedPageCache内存数。
第二行:
-buffers/cache
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 基础 常用命令 详解