织梦CMS - 轻松建站从此开始!

罗索

unix命令

罗索客 发布于 2003-03-25 09:46 点击:次 
1. ls 这是最基本的档案指令。 ls 的意义为 list,也就是将某一个目录或是 某一个档案的内容显示出来。如果你在下 ls 指令後头没有跟著任何的档名,它将会显 示出目前目录中所有档案。也可以在 ls 後面加上所要察看的目录名称或档案的名称, 如 % ls /etc ls 有一些特别
TAG:

1. ls

这是最基本的档案指令。 ls 的意义为 "list",也就是将某一个目录或是

某一个档案的内容显示出来。如果你在下 ls 指令後头没有跟著任何的档名,它将会显
示出目前目录中所有档案。也可以在 ls 後面加上所要察看的目录名称或档案的名称,


% ls /etc

ls 有一些特别的参数,可以给予使用者更多有关的资讯,如下:

-a : 在 UNIX 中若一个目录或档案名字的第一个字元为 "." , 则使用 ls

将不会显示出这个档案的名字,我们称此类档案为隐藏档。如 tcsh的初设档 .tcshrc
;如果我们要察看这类档案,则必须加上参数 -a 。

-l : 这个参数代表使用 ls 的长( long )格式,可以显示更多的资讯,如档案存取
权,档案拥有者( owner ),档案大小,档案最後更新日期,甚而 symbolic link 的档
案是 link 那一个档等等。如下

% ls -l

 

2. cp

cp 这个指令的意义是复制("COPY") , 也就是将一个或多个档案复制成另一个档案或者
是将其复制到另一个目录去。

-i : 此参数是当已有档名为 f2 的档案时,若迳自使用 cp 将会将原来 f2

的内容掩盖过去,因此在要盖过之前必须先询问使用者一下。如使用者

的回答是y(yes)才执行复制的动作。

-r : 此参数是用来做递回复制用,可将一整颗子树都复制到另一个

目录中。

 

3. mv

mv 的意义为 move , 主要是将一档案改名或换至另一个目录。如同 cp ,它也有

三种格式:

 

mv 的参数有两个,-f 和 -i , 其中 -i 的意义与 cp 中的相同,均是 interactive

询问之意。而 -f 为强迫( force ) , 就是不管有没有同名的档案,反正我就是要

搬过去,所有其他的参数遇到 -f 均会失效。

 

4. rm

rm 的意义是 remove ,也就是用来杀掉一个档案的指令。在 UNIX 中一

个被杀掉的档案除非是系统恰好有做备份,否则是无法像 DOS 里面一样还能够救回

来的。所以在做 rm 动作的时候使用者应该要特别小心。

 

-f : 将会使得系统在删除时,不提出任何警告讯息。

-i : 在除去档案之前均会询问是否真要除去。

-r : 递回式的删除。

 

5. mkdir

mkdir 是一个让使用者建立一个目录的指令。你可以在一个目录底下使用

midir 建立一个子目录,使用的方法就不用多说了吧!

 

6. chdir ( cd )

这是让使用者用来转移工作目录用的。

chdir dirname

如此你就可以将目前的目录转移到 dirname 这一个目录去。或使用 "chdir .." 来转
移到上一层目录。

 

7. rmdir

相对於 mkdir ,rmdir 是用来将一个"空的"目录杀掉的。如果一个目录下面没有任何
档案,你就可以用 rmdir 指令将其除去。rmdir 的使用法如下:

rmdir dirname1 [ dirname2 .... ]

如果一个目录底下有其他的档案, rmdir 将无法将这个目录杀掉,除非使用 rm 指令
的 -r 选项。

 

8. pwd

pwd 会将目前目录的路径( path )显示出来,例如:

9. cat/more/less

以上三个指令均为察看档案内容的指令。cat 的意义是猫....不不不,是
concatenate ,在字典上的意思是"连结,将…串成锁状"( 语出资工电子词典
cdict ),其实就是把档案的内容显示出来的意思。 cat 有许多奇怪的参数,较常为
人所使用的是 -n 参数,也就是把显示出来的内容加上行号。 cat 的用法如下:

cat [-n] :自标准输入读进内容,你可以用 pipe 将别的程式的输出转向

给 cat .

cat [-n] filename : 将 filename 的内容读进来,显示在标准输出上。问题在於 cat
它是不会停下来的,因此并不好用( 试想如果一个萤幕二十四行,而一个档案四百行,
cat 一出来将会劈哩啪啦不断的卷上去,使用者很难据此得到他们所需的资讯。) 所以
才有人又写了 more 出来。

more ,可以将所观察的档案跟据终端机的形态一页页的显示出来,再根据使用者的要求
换页或卷行。如果使用者要在某一个档案中搜寻一个特定的字串,则按 / 然後跟著打
所要搜寻的单字即可进行搜寻。more 也可以找得到。more 的使用法如下:

more filename

 

如果你在使用中觉得已经看到了所要看的部份,可以按'q'离开 more 的使用。在使用
中按'v' 亦可以使用编辑器来编辑所观看的档案。less 的用法与 more 极类似,原先
它就是为了弥补 more 只能往前方卷页的缺点而设计。 less 的用法如下:

less filename

其与 more 不同的是它可以按 y 来往上卷一行,并且可以用"?"来往回搜寻你所要找的
单字。

 

10. chmod

chmod 为变更档案模式用( change mode ) . 这个指令是用来更改档案的存取模式
access mode )。在 UNIX 一个档案上有可读(r)可写(w)可执行(x)三种模式,分别针对
该档案的拥有者( onwer )、同群者( group member )( 你可以 ls -lg来观看某一档案
的所属的 group ),以及其他人( other )。一个档案如果改成可执行模式则系统就将
其视为一个可执行档,而一个目录的可执行模式代表使用者有进入该目录之权利。
chmod 就是用来变更一些档案的模式,其使用方式如下:

chmod [ -fR ] mode filename ...

其参数的意义如下:

-f Force. chmod 不会理会失败的动作。

-R Recurive. 会将所有子树下的所有子目录及档案改为你所要改成的模式。

mode 可以为一个三位或四位的八进位数字,来表示对某些对象的存取权。详情可参阅
chmod(1) 的 manual page 中有关 Absolute Modes 的说明。或是用一个字串来表示,
请参考 chmod(1) 的说明。

b. 关於 Process 处理的指令:

1. ps

ps 是用来显示目前你的 process 或系统 processes 的状况。

以下列出比较常用的参数:

 

其选项说明如下:

-a 列出包括其他 users 的 process 状况。

-u 显示 user - oriented 的 process 状况 。

-x 显示包括没有 terminal 控制的 process 状况 。

-w 使用较宽的显示模式来显示 process 状况 。

 

我们可以经由 ps 取得目前 processes 的状况,如 pid , running state 等。

2. kill

kill 指令的用途是送一个 signal 给某一个 process 。因为大部份送的都是

用来杀掉 process 的 SIGKILL 或 SIGHUP ,因此称为 kill 。kill 的用法

为:

 

kill [ -SIGNAL ] pid ...

kill -l

 

SIGNAL 为一个 singal 的数字,从 0 到 31 ,其中 9 是 SIGKILL ,也就是一

般用来杀掉一些无法正常 terminate 的讯号。其馀讯号的用途可参考 sigvec(2)

中对 signal 的说明。

 

你也可以用 kill -l 来察看可代替 signal 号码的数目字。kill 的详细情形

请参阅 man kill。

c. 关於字串处理的指令:

1. echo

echo 是用来显示一字串在终端机上。□ echo -n 则是当显示完之後不会有跳行的动
作。

 

2. grep/fgrep

grep 为一过滤器,它可自一个或多个档案中过滤出具有某个字串的行,或是

自标准输入过滤出具有某个字串的行。

 

fgrep 可将欲过滤的一群字串放在某一个档案中,然後使用 fgrep 将包含有

属於这一群字串的行过滤出来。

 

grep 与 fgrep 的用法如下:

 

grep [-nv] match_pattern file1 file2 ....

fgrep [-nv] -f pattern_file file1 file2 ....

 

-n 把所找到的行在行前加上行号列出

-v 把不包含 match_pattern 的行列出

match_pattern 所要搜寻的字串

-f 以 pattern_file 存放所要搜寻的字串

d. 网路上查询状况的指令:

1. man

man 是手册 ( manual ) 的意思。 UNIX 提供线上辅助( on-line help )的功能,

man 就是用来让使用者在使用时查询指令、系统呼叫、标准程式库函式、各种表

格等的使用所用的。man 的用法如下:

 

man [-M path] [section] title ] .....

man [-M path] -k keyword ...

 

-M path man 所需要的 manual database 的路径。

我们也可以用设定环境变数 MANPATH 的方式来取代 -M 选项。

title 这是所要查询的目的物。

section 为一个数字表示 manual 的分类,通常 1 代表可执行指令,

2 代表系统呼叫( system call ) ,3 代表标准函数,等等。

我们如要参考 eqnchar(7) 的资料,则我们就输入 man 7 eqnchar ,

便能取得我们所要的辅助讯息。

-k keyword

用来将含有这项 keyword 的 title 列出来。

man 在 UNIX 上是一项非常重要的指令,我们在本讲义中所述之用法均仅只是一个大家
比较常用的用法以及简单的说明,真正详细的用法与说明还是要请你使用 man 来得
到。 (iwgh)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/200303/1924.html]
本文出处: 作者:iwgh
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容