当前位置:文档之家› unix常用命令

unix常用命令

UNIX常用命令以下只说明各常用指令的基本用法, 若需详细说明, 请用 man 去读详细的 manual. 1.关於档案/目录处理的命令ls——列目录这是最基本的档案指令。

ls 的意义为 "list",也就是将某一个目录或是某一个档案的内容显示出来。

格式:ls -1ACFLRabcdfgilmnopqrstux -W[sv] [files]例:#ls (不跟任何参数以简单格式列出当前目录中所有档案)#ls bin (简单格式列出名为bin的文件或目录下的所有档案)#ls /u/ilasII_GB/lib (全路径,列出lib目录下的所有档案)ls 的常用参数如下:-a : 在 UNIX 中若一个目录或档案名字的第一个字元为 "." , 则使用 ls将不会显示出这个档案的名字,我们称此类档案为隐藏档。

如 .profile、.tcshrc等如果我们要察看这类档案,则必须在其后加上参数 -a 。

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

显示结果如下所示:drwxrwxrwx 30 root bin 1024 May 23 10:38 udrwxrwxrwx 2 root sys 512 Jul 28 1999 uacndrwxrwxrwx 5 root sys 512 Jul 27 1999 udklrwxrwxrwx 1 root sys 11 Jul 27 1999 unix -> /stand/unix drwxrwxrwx 35 root auth 1024 Apr 3 13:45 usr 在开始的10个字符上系统给出文件的用户权限。

该序列分成四个域。

第一个字符为类型域,第2、3、4个字符为用户主域,第5、6、7个字符为同组用户域,第8、9、10个字符为其它用户域,域中字符的含义如下:●在类型域中:d 表示此文件是一个目录-表示此文件是一个普通文件b 表示此文件是一个特殊的块设备I/O文件c 表示此文件是一个特殊的字符设备I/O文件l 表示此文件是一个连接文件。

在其文件名称后紧跟与它连接的文件路径及名称。

如: unix -> /stand/unix●在“用户主”、“同组用户”、“其它用户”域中:r 表示有读权限。

含义是可以拷贝或显示该文件或目录中的内容。

w 表示有写权限。

含义是可以改变或修改该文件。

x 表示有执行权限。

含义是可以执行该文件或用cd命令进入该目录,在该目录中建立文件或子目录等。

-表示无权限。

ls -l | wc -l 查文章的数量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:指改变模式。

包括三个方面:A.为哪些用户改变u——用户本身g——同组用户o——其他用户B.如何改变+——增加权限-——去掉权限C.什么权限r——读权限w——写权限x——执行权限例:#chmod g0+w file1修改前file1的权限为:-rwxr--r--修改后file1的权限为:-rwxrw-rw-也可以用一个三位八进位数字来表示对某些对象的存取权。

例:#chmod 666 * (所有用户都可读、写)#chmod 777 * (所有用户都可读、写、执行)cat——串联显示命令例:#cat file1 (将文件file1的内容在屏幕上不停地显示出来)Cat命令还可以用来建立文件,如:#cat>newfilethis is a textCtrl+D即建立newfile文件,内容为:this is a text#cat file1 file2 >file3 (将file1,file2两个文件接起来生成文件file3)#cat f1 f2>>f3 (将f1,f2两文件接在f3文件的尾)more——分屏显示文件内容more 可以将所观察的档案根据分屏显示出来,并根据使用者的要求换页或卷行。

如果使用者要在某一个档案中搜寻一个特定的字串,则按 / 然後跟著打所要搜寻的单字即可进行搜寻。

如果你在使用中觉得已经看到了所要看的部份,可以按'q'离开 more 的使用。

在使用中按'v' 亦可以使用编辑器来编辑所观看的档案。

格式: more filenamecd——改变当前目录格式:cd dirname例:#cd (到用户的“家”目录)#cd /usr (将目前目录转移到/usr目录,也即进入/usr)#cd .. (返回上一级目录)#cd ../.. (返回上一级目录的上一级目录)cp——拷贝这个指令的意义是复制("COPY") , 也就是将一个或多个档案复制成另一个档案或者是将其复制到另一个目录去。

格式: cp [-fip] source_file target_file (拷贝文件)cp [-r|-R][-fip] source_file... target_file (拷贝目录)常用参数如下:-i : 此参数是当已有档名为 f2 的档案时,若迳自使用 cp 将会将原来 f2的内容掩盖过去,因此在要盖过之前必须先询问使用者一下。

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

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

cp 的用法例举如下:#cp f1 f2 (将名为 f1 的档案复制一份名为 f2 的档案)#cp f1 f2 f3 ... dir (将档案 f1 f2 f3 ... 复制一份放到目录 dir 里面)#cp -r dir1 dir2 (将 dir1 的全部内容全部复制到 dir2 里面)mv——移动或改名mv 的意义为 move , 主要是将一档案改名或移至另一个目录。

格式: mv [-fi] source_file... target_file主要参数:-i : -i 的含义与 cp 的相同,均是 interactive询问之意。

-f:强迫( force )执行。

所有其他的参数遇到 -f 均失效。

例:#mv f1 f2 (将名为 f1 的档案变更成名为 f2 的档案)#mv dir1 dir2 (将名为 dir1 的目录变更成名为 dir2 的目录)#mv f1 f2 f3 ... dir (将档案 f1 f2 f3 ... 都移至目录 dir 里面)rm——删除rm 的意义是 remove ,也就是用来删除一个档案。

在 UNIX 中一个被删除的档案除非是系统恰好有做备份,否则是无法像 DOS 里面一样还能够恢复。

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

格式: rm [-fiRr] file...主要参数:-f : 将会使得系统在删除时,不提出任何警告讯息。

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

-r : 递归式的删除。

注意:不要随便使用 rm -rf , 否则有一天你会"欲哭无泪"......例:rm f1 (删除名为f1的档案)rm -r dir1 (删除名为dir1的目录及其下的所有档案)rm -i sendmarc1 (删除名为sendmarc1的文件前先提示,待回答(Y/N)?)如下:remove sendmarc1 ? ymkdir——创建目录mkdir 是一个让使用者建立一个目录的指令。

你可以在一个目录底下使用midir 建立一个子目录。

格式:mkdir dirname1 [ dirname2 ... ]例:#cd /u/ilasII_GB (将当前路径置换为/u/ilasII_GB)# mkdir ilasbak (在/u/ilasII_GB目录下创建一个名为ilasbak的子目录)rmdir——删除目录rmdir 是用来将一个"空的"目录删除。

如果一个目录下面没有任何档案,你就可以用rmdir 指令将其除去。

格式:rmdir dirname1 [ dirname2 .... ]如果一个目录底下有其他的档案, rmdir 将无法将这个目录删除,除非使用 rm 指令的 -r 选项。

例:rmdir ilasbak (删除名为ilasbak的空目录)pwd——显示当前路径例如:#pwd/u/ilasII_GB/database (显示当前路径为:/u/ilasII/database)2.关于进程处理的命令:ps——显示目前你的 process 或系统 processes 的状况格式:ps [-aAdefl] [-G groups] [-o format] [-p pids] [-t termlist] [-u users] [-U users] [-g pgrplist]常用参数:-a 列出所有用户的 process 状况。

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

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

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

例:#ps -ae (显示所有进程的进程号及状态)#ps -u ilasnt1 (显示用户ilasnt1的进程状态)PID TTY TIME CMD1194 ttyp0 00:00:00 sh#ps -t tty1a (显示设备tty1a上的进程)如上所示:我们可以经由 ps 取得目前 processes 的状况,如 PID(进程号) , TTY(设备名)、TIME(时间)、CMD(程序名)等。

kill——杀进程kill 指令的用途是送一个信号给某一个进程。

因为大部份送的都是用来杀掉进程,因此称为 kill 。

格式:kill [ -SIGNAL ] pid ...kill -lSIGNAL :为一个讯号的数字,从 0 到 31 ,其中 9 是 SIGKILL ,也就是一般用来杀掉一些无法正常终止进程的讯号。

相关主题