Unix常用操作指令.docx

上传人:b****3 文档编号:27382282 上传时间:2023-06-30 格式:DOCX 页数:46 大小:36.16KB
下载 相关 举报
Unix常用操作指令.docx_第1页
第1页 / 共46页
Unix常用操作指令.docx_第2页
第2页 / 共46页
Unix常用操作指令.docx_第3页
第3页 / 共46页
Unix常用操作指令.docx_第4页
第4页 / 共46页
Unix常用操作指令.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

Unix常用操作指令.docx

《Unix常用操作指令.docx》由会员分享,可在线阅读,更多相关《Unix常用操作指令.docx(46页珍藏版)》请在冰豆网上搜索。

Unix常用操作指令.docx

Unix常用操作指令

第一章目录及文件操作命令

1.1ls

[语法]:

ls[-RadCxmlnogrtucpFbqisf1][目录或文件......]

[说明]:

ls命令列出指定目录下的文件,缺省目录为当前目录./,缺省输出顺序为纵向按字符顺序排列。

-R递归地列出每个子目录的内容

-a列出所有文件,包括第一个字符为“.”的隐藏文件

-d若后面参数是目录,则只列出目录名而不列出目录内容,常与-l选项连

用以显示目录状态。

-C输出时多列显示

-x横向按字符顺序排列

-m输出按流式格式横向排列,文件名之间用逗号(,)分隔

-l长列表输出,显示文件详细信息,每行一个文件,从左至右依次是:

文件存取模式链接数文件主文件组文件字节数上次修改时间

其中文件存取模式用10个字母表示,从左至右的意义如下:

第一个字母表示文件种类,可以是以下几种情况:

d为目录文件

l为链接

b为块文件

c为字符型文件

p为命名管道(FIFO)

-为普通文件

后面9个字母分别表示文件主、同组用户、其他用户对文件的权力,用r表示可读,w表示可写,x表示可执行。

如果是设备文件,则在文件字节数处显示:

主设备从设备。

-n与-l选项相同,只是文件主用数字(即UID)显示,文件组用数字

(即GID)表示

-o与-l选项相同,只是不显示文件组

-g与-l选项相同,只是不显示文件主

-r逆序排列

-t按时间顺序排列而非按名字

-u显示时间时使用上次访问时间而非上次修改时间

-c显示时间时使用上次修改i节点时间而非上次修改时间

-p若所列文件是目录文件,则在其后显示斜杠(/)

-F在目录文件后加’/’,在可执行文件后加’*’

-b文件名中若有非打印字符,则用八进制显示该字符

-q文件名中的打印字符用’?

’表示

-i显示节点号

-s显示文件长度时使用块长度而非字节长度

-f将后面的参数解释为目录并列出其中的每一项

-1每行仅列一项

[例子]:

ls列出当前目录下的文件

ls-al/bin以长列表的形式列出目录/bin下的所有文件,包括隐藏文件

1.2pwd

[语法]:

pwd

[说明]:

本命令用于显示当前的工作目录

[例子]:

pwd显示出当前的工作目录

1.3cd

[语法]:

cd[目录]

[说明]:

本命令用于改变当前的工作目录,无参数时使用环境变量$HOME作为其参数,$HOME一般为注册时进入的路径。

[例子]:

cd回到注册进入时的目录

cd/tmp进入/tmp目录

cd../进入上级目录

1.4mkdir

[语法]:

mkdir[-m模式][-p]目录名

[说明]:

本命令用于建立目录,目录的存取模式由掩码(umask)决定,要求对其父目录具有写权限,目录的UID和GID为实际UID和GID

-m按指定存取模式建立目录

-p建立目录时建立其所有不存在的父目录

[例子]:

mkdirtmp在当前目录下建立子目录tmp

mkdir-m777/tmp/abc用所有用户可读可写可执行的存取模式

建立目录/tmp/aaa,存取模式参看命令chmod

mkdir-p/tmp/a/b/c建立目录/tmp/a/b/c,若不存在目录/tmp/a

及/tmp/a/b则建立之

1.5rmdir

[语法]:

rmdir[-p][-s]目录名

[说明]:

本命令用于删除目录

-p删除所有已经为空的父目录

-s当使用-p选项时,出现错误不提示

[例子]:

rmdir/tmp/abc删除目录/tmp/abc

rmdir-p/tmp/a/b/c删除目录/tmp/a/b/c,若目录/tmp/a/b

及/tmp/a空,则删除

1.6cat

[语法]:

cat[-u][-s][-v[-t][-e]]文件…

[说明]:

显示和连接一个或多个文件至标准输出

-u无缓冲的输出(缺省为有缓冲输出)

-s对不存在的文件不作提示

-v显示出文件中的非打印字符,控制字符显示成^n,n为八进制数字,

其他非打印字符显示成M-x,x为该字符低7位的8进制数值

-t在使用-v选项时,将制表符(tab)显示成^I,将换页符

(formfeed)显示成^L

-e在使用-v选项时,在每一行的行尾显示$

[例子]:

catfile显示文件

cat-s-v-efile1file2file3逐个显示文件file1file2file3

1.7head

[语法]:

head[-n][文件...]

[说明]:

将文件的头n行显示输出,缺省值为10行,显示多个文件时,在每个文件的前面加上==>文件名<==

[例子]:

head-9999file1file2显示文件file1和file2的头9999行

1.8more

[语法]:

more[-cdflrsuw][-行数][+行数][+/模式][文件...]

[说明]:

将文件显示在终端上,每次一屏,在左下部显示--more--,若是从文件读出而非从管道,则在后面显示百分比,表示已显示的部分,按回车键则上滚一行,按空格键则上滚一屏,未显示完时可以使用more命令中的子命令。

-c显示文件之前先清屏

-d当输错命令时显示错误信息而不是响铃(bell)

-f不折叠显示长的行

-l不将分页控制符(CTRLD)当作页结束

-r一般情况下,more不显示控制符,本选项使more显示控制符,

例如,将(CTRLC)显示成^C

-s将多个空行转换成一个空行显示

-u禁止产生下划线序列

-w一般情况下more显示完后立即推出,本选项在显示完后作提

示,敲任意键后推出

-n行数指定每屏显示的行数

+行号从指定行号开始显示

+/模式在文件中搜索指定模式,从模式出现行的上两行开始显示文件未显示完时,可以使用more命令中的子命令,命令中除了!

和/以外均不回显,也不用敲回车,当命令破坏more提示行时,可用退格键恢复提示行。

在以下子命令操作中,i表示数字,缺省值为1。

i空格上滚一屏多i行

i回车上滚i行

iCTRL+Di缺省时上滚11行,否则上滚i行

idi缺省时上滚11行,否则上滚i行

izi缺省时上滚一屏,否则定义每屏为i行

is跳过i行后显示一屏

if跳过i屏后显示一屏

iCTRL+B跳回i屏后显示一屏

b跳回一屏后显示一屏

q或Q推出more

=显示当前行号

v从当前行开始编辑当前文件编辑器由环境变量

$EDITOR定义

h显示帮助信息

i/模式向前搜索,直至模式的第i次出现,从该行的上两行开始显示一屏

in向前搜索,直至上一模式的第i次出现,从该行的上两行开始显示一屏

单引号回到上次搜索的出发点,若无搜索则回到开始位置

!

命令激活一个sh去执行指定的命令

i:

n跳到后面第i个文件,若不存在则跳到最后一个文件

f显示当前文件名和行号

q或:

Q推出more

.(点)重复上次命令

[例子]:

more-c+50file清屏后,从第50行开始显示文件file

more-s-wfile1file2file3显示文件file1file2file3

1.9cp

[语法]:

cp[-p][-r]文件1[文件2...]目标

[说明]:

将文件1(文件2...)拷贝到目标上,目标不能与文件同名,若目标是文件名,则拷贝的文件只能有一个,若目标是目录,则拷贝的文件可以有多个,若目标文件不存在,则建立这个文件,若存在,则覆盖其以前的内容,若目标是目录,则将文件拷贝到这个目录下。

-i在覆盖已存在文件时作提示,若回答y则覆盖,其他则中止

-p不仅拷贝文件内容,还有修改时间,存取模式,存取控制表,但不拷贝

UID及GID

-r若文件名为目录,则拷贝目录下所有文件及子目录和它们的文件,此时

目标必须为目录

[例子]:

cpfile1file2将文件file1拷贝到文件file2

cpfile1file2/tmp将文件file1和文件file2拷贝到目录/tmp下

cp-r/tmp/mytmp将目录/tmp下所有文件及其子目录拷贝至目录/mytmp

1.10mv

[语法]:

mv[-f][-i]文件1[文件2...]目标

[说明]:

将文件移动至目标,若目标是文件名,则相当于文件改名

-i在覆盖已存在文件时作提示,若回答y则覆盖,其他则中止

-f覆盖前不作任何提示

[例子]:

mvfile1file2将文件file1改名为file2

mvfile1file2/tmp将文件file1和文件file2移动到目录/tmp下

1.11rm

[语法]:

rm[-f][-i]文件...

或rm-r[-f][-i]目录名...[文件]

[说明]:

用来删除文件或目录

-f删除文件时不作提示

-r递归地删除目录及其所有子目录

-i删除文件之前先作提示

[例子]:

rmfile1删除文件file1

rm-i/tmp/*删除目录/tmp下的所有文件

rm-r/mytmp递归地删除目录/mytmp

1.12chmod

[语法]:

chmod[-R]模式文件...

或chmod[ugoa]{+|-|=}[rwxst]文件...

[说明]:

改变文件的存取模式,存取模式可表示为数字或符号串,例如:

chmodnnnnfile,n为0-7的数字,意义如下:

4000运行时可改变UID

2000运行时可改变GID

1000置粘着位

0400文件主可读

0200文件主可写

0100文件主可执行

0040同组用户可读

0020同组用户可写

0010同组用户可执行

0004其他用户可读

0002其他用户可写

0001其他用户可执行

nnnn就是上列数字相加得到的,例如chmod0777file是指将文件file存取权限置为所有用户可读可写可执行。

-R递归地改变所有子目录下所有文件的存取模式

u文件主

g同组用户

o其他用户

a所有用户

+增加后列权限

-取消后列权限

=置成后列权限

r可读

w可写

x可执行

s运行时可置UID

t运行时可置GID

[例子]:

chmod0666file1file2将文件file1及file2置为所有用户可读可写

chmodu+xfile对文件file增加文件主可执行权限

chmodo-rwx对文件file取消其他用户的所有权限

1.13chown

[语法]:

chown[-R]文件主文件...

[说明]:

文件的UID表示文件的文件主,文件主可用数字表示,也可用一个有效的用户名表示,此命令改变一个文件的UID,仅当此文件的文件主或超级用户可使用。

-R递归地改变所有子目录下所有文件的存取模式

[例子]:

chownmaryfile将文件file的文件主改为mary

chown150file将文件file的UID改为150

1.14chgrp

[语法]:

chgrp[-R]文件组文件...

[说明]:

文件的GID表示文件的文件组,文件组可用数字表示,也可用一个有效的组名表示,此命令改变一个文件的GID,可参看chown。

-R递归地改变所有子目录下所有文件的存取模式

[例子]:

chgrpgroupfile将文件file的文件组改为group

1.15cmp

[语法]:

cmp[-l][-s]文件1文件2

[说明]:

比较两个文件,若文件1为-,则使用标准输入,两个文件相同则无提示,不同则显示出现第一个不同时的字符数和行号。

-l显示每个不同处的字节数(10进制)和不同的字节(8进制)

-s不作任何提示,只返回码

[例子]:

cmpfile1file2比较文件file1和file2

cmp-lfile1file2比较文件file1和file2的每处不同

1.16diff

[语法]:

diff[-be]文件1文件2

[说明]:

本命令比较两个文本文件,将不同的行列出来

-b将一串空格或TAB转换成一个空格或TAB

-e生成一个编辑角本,作为ex或ed的输入可将文件1转换成文件2

[例子]:

difffile1file2

diff-bfile1file2

diff-efile1file2>edscript

1.17wc

[语法]:

wc[-lwc]文件…

[说明]:

统计文件的行、字、字符数,若无指定文件,则统计标准输入

-l只统计行数

-w只统计字数

-c只统计字符数

[例子]:

wc-lfile1file2统计文件file1和file2的行数

1.18split

[语法]:

split[-n][文件[名字]]

[说明]:

split将指定大文件分解为若干个小文件,每个文件长度为n行(n缺省时为1000),第一个小文件名为指定的名字后跟aa,直至zz,名字缺省值为x,若未指定大文件名,则使用标准输入

[例子]:

split-500largefilelittle

将文件largefile每500行写入一个文件,第一个文件名为littleaa

1.19touch

[语法]:

touch[-amc][mmddhhmm[yy]]文件…

[说明]:

将指定文件的访问时间和修改时间改变,若指定文件不存在则创建之,若无指定时间,则使用当前时间,返回值是未成功改变时间的文件个数,包括不存在而又未能创建的文件。

-a只改变访问时间

-m只改变修改时间

-c若文件不存在,不创建它且不作提示

mmddhhmm[yy]两位表示月日时分[年]

[例子]:

touchfile

更新文件file的时间

touch0701000097HongKong

将文件HongKong的时间改为97年7月1日0时0分

1.20file

[语法]:

file[-f文件名文件]文件…

[说明]:

file对指定文件进行测试,尽量猜测出文件类型并显示出来

-f文件名文件文件名文件是一个包含了文件名的文本文件,-f选项测试

文件名文件中所列出的文件

[例子]:

file*显示当前目录下所有文件的类型

1.21pack

[语法]:

pack文件…

[说明]:

pack将指定文件转储为压缩格式,文件名后加.z,文件存取模式,访问时间,修改时间等均不变

[例子]:

packlargefile将largefile压缩后转储为largefile.z

1.22pcat显示压缩文件

[语法]:

pcat文件…

[说明]:

pcat显示输出压缩文件

[例子]:

pcatlargefile.z显示压缩前的largefile

pcatlargefile.z>oldfile显示压缩前的laregfile,并将其重定向到

文件oldfile中

1.23unpack

[语法]:

unpack文件…

[说明]:

将压缩后的文件解压后转储为压缩前的格式

[例子]:

unpacklargefile.z将压缩文件largefile.z解压后转储为largefile

1.24find

[语法]:

find路径名…表达式

[说明]:

find命令递归地遍历指定路径下的每个文件和子目录,看该文件是否能使表达式值为真,以下n代表一个十进制整数,+n代表打印n,-n代表小于n,下面是合法表达式说明:

-name模式文件名与模式匹配则为真,(\为转意符)

-perm[-]八进制数文件存取模式与八进制数相同则为真若有-选项,则文件存

取模式含有八进制数规定模式即为真

-sizen[c]文件块长度为n则真(一块为512字节),若

有c选项,则文件字节长度为n则真

-atimen若文件的最近访问时间为n天前则为真,

find命令将改变其访问的目录的访问时间

-mtimen若文件的最近修改时间为n天前则为真

-ctimen若文件状态为n天前改变则为真

-exec命令{}\;若命令返回值为0则真,{}内为命令参数,

此命令必须以\;为结束

-ok命令{}\;与exec相同,只是在命令执行前先提示,若

回答y则执行命令

-print显示输出使表达式为真的文件名

-newer文件若文件的访问时间比newer指定的文件新则真

-depth先下降到搜索目录的子目录,然后才至其自身

-mount仅查找包含指定目录的文件系统

-local文件在当前文件系统时为真

-typec文件类型为c则真,c取值可为b(块文件)c(字符文件)

d(目录)l(符号链接)p(命名管道)f(普通文件)

\(表达式\)表达式为真则真

-linksn文件链接数为n时为真

-user用户当文件属于用户时为真,用户可用数字表示UID

-nouser当文件不属于/etc/passwd中的一个用户时为真

-group文件组当文件属于文件组时为真,文件组可用数字表示GID

-nogroup当文件不属于/etc/group中的一个组时为真

-fstype类型当文件所属文件系统类型为指定类型时真

-inumn当文件i节点号为n时为真

-prune当目录名与模式匹配时,不再搜索其子目录

可以用逻辑操作符将简单表达式连接成复杂表达式

逻辑操作符有!

表示非操作,-o表示或操作,两个表达式并列则表示

与操作

[例子]:

find/-namefind*-print

从根目录开始搜索文件名如find*的文件并显示之

find./-execsleep{1}\;-print

每秒显示一个当前目录下的文件

find$HOME\(-namea.out-o-name‘*.o’\)-atime+7-execrm{}\;

从$HOME目录开始搜索,删除所有文件名为a.out或*.o且访问时间在7天前的文件

1.25grep

[语法]:

grep[选项]模式[文件...]

[说明]:

在指定的文件中搜索模式,并显示所有包含模式的行,模式是一个正规表达式,在使用正规表达式时,最好将其引在单引号(’)中,若指定文件为缺省,则使用标准输入,正规表达式可以是:

.匹配任意一个字符

*匹配0个或多个*前的字符

^匹配行开头

$匹配行结尾

[]匹配[]中的任意一个字符,[]中可用-表示范围,

例如[a-z]表示字母a至z中的任意一个

\转意字符

命令中的选项为:

-b显示块号

-c仅显示各指定文件中包含模式的总行数

-i模式中字母不区分大小写

-h不将包含模式的文件名显示在该行上

-l仅显示包含模式的文件名

-n显示模式所在行的行号

-s指定文件若不存在或不可读,不提示错误信息

-v显示所有不包含模式的行

[例子]:

grep‘good’*在所有文件中搜索含有字符串good的行

grep‘^myline’mytext在文件mytext中搜索行首出现myline字符串的行

1.26vi

[语法]:

vi[-wn][-R]文件…

[说明]:

vi是一个基于行编辑器ex上的全屏幕编辑器,可以在vi中使用ex,ed的全部命令,vi选项中-wn指将编辑窗口大小置为n行,-R为将编辑的文件置为只读模式,vi工作模式分为命令模式和输入模式,一般情况下在命令模式下,可敲入vi命令,进入输入模式下时可以编辑要编辑的文本,命令aAiIoOcCsSR可进入输入模式,在输入模式下按ESC键可推出输入模式,回到命令模式,在命令模式中敲入:

命令,则可进入ex方式,在屏幕底部出现提示符:

,此时可使用任意ex命令,屏幕底行也用来作/?

!

命令的提示行,大多数命令可以在其前面加数字,表示命令执行的重复次数,下面简单介绍一下vi的命令集,^表示(CTRL)键

^B退回前一页,前面加数字表示重复次数,每次换页时

保留上一页的两行

^D在命令模式下,表示下滚屏幕的一半,在输入模式下,表示回退至

左边的自动缩进处

^E显示屏幕底线之下的一行

^F前进一页,前面加数字表示重复次数,每次换页时

保留上一页的两行

^G显示当前文件名,当前行号和文件总行数,并用百分号当前行在

整个文件中的位置

^H(退格)在命令模式下,光标左移一格;在输入模式下,删去前面的字符

^I(TAB)在输入模式下,产生一串空格

^J(LF)光标下移一行

^L刷新屏幕,即将屏幕重新显示

^M(回车)在命令模式下,光标移动至下行开头

在输入模式下,开辟一新行

^N光标下移一行

^P光标上移一行

^Q在输入模式下,将其后的非打印字符作为正文插入

^R刷新屏幕

^U屏幕上滚一半,前面加数字时表示上滚的行数,此数字对

以后的^D^U命令有效

^V在输入模式下,将其后的非打印字符作为正文插入

^W在输入模式下,使光标回退一个字

^Y显示屏幕底线之上的一行

^Z暂停编辑,退回上层Shell

^[(ESC)退出输入模式,回到命令模式

!

暂时退出编辑,执行Shell命令

(双引号)用于标志有名缓冲区,编号缓冲区1-9用于保存被删去的正文,字

母名缓冲区a-z供用户存放自定义的正文

$将光标移动到当前行尾,前加数字则表示前移行数,如2$表示移动

到下一行行尾

%将光标移动到配对的小括号()或大括号{}上去

(退回句子开头

)前移到句子开头

-退到上一行第一个非空格字符

.重复上一次改变缓冲区内容的命令

/模式向前搜索模式,将光标移动到模式出现处,模式是一个正规

表达式,(参看grep)

在屏幕底部提示:

,其后可使用ex命令

?

功能同/,但方向是向前查找

[[光标回退至前一节分界处

\转意符

]]光标前移至节分界处

^(不是CTRL)光标移至当前行第一个非空字符上

‘连续两个”表示将光标移至其移动前

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 外语学习 > 英语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1