搜档网

搜档网

当前位置:搜档网 > Linux系统命令及其使用详解

Linux系统命令及其使用详解

Linux 系统命令及其使用详解(大全)

名称:cd

使用权限:所有使用者

使用方式:cd [dirName]

说明:变换工作目录至dirName。

其中dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的home directory (也就是刚login 时所在的目录).另外,"~" 也表示为home directory 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录。

名称:cp

使用权限:所有使用者

使用方式:

cp [options] source dest

cp [options] source... directory

说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。

把计:

-a 尽可能将档案状态,权限等资料都照原状予以复制。

-r 若source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。

-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。

范例:

将档案aaa 复制(已存在),并命名为bbb:

cp aaa bbb

将所有的C语言程式拷贝至Finished 子目录中:

cp *.c Finished

用法:find

使用说明:

将档案系统内符合expression 的档案列出来。你可以指要档案的名称,类别,时间,大小,权限等不同资讯的组合,只有完全相符的才会被列出来。

find 根据下列规则判断path 和expression,在命令列上第一个- ( ) , ! 之前的部份为path,之后的是expression。如果path 是空字串则使用目前路径,如果expression 是空字串则使用-print 为预设expression

expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。

-mount, -xdev:只检查和指定目录在同一个档案系统下的档案,避免列出其它档案系统中的档案

-amin n:在过去n 分钟内被读取过

-anewer file:比档案file 更晚被读取过的档案

-atime n:在过去n 天过读取过的档案

-cmin n:在过去n 分钟内被修改过

-cnewer file :比档案file 更新的档案

-ctime n:在过去n 天过修改过的档案

-empty:空的档案-gid n or -group name:gid 是n 或是group 名称是name

-ipath p, -path p:路径名称符合p 的档案,ipath 会忽略大小写

-name name, -iname name:档案名称符合name 的档案。iname 会忽略大小写

-size n:档案大小是n 单位,b 代表512 位元组的区块,c 表示字元数,k 表示kilo bytes,w 是二个位元组。-type c:档案类型是c 的档案。

d: 目录

c: 字型装置档案

b: 区块装置档案

p: 具名贮列

f: 一般档案

l: 符号连结

s: socket

-pid n:process id 是n 的档案

你可以使用( ) 将运算式分隔,并使用下列运算。

exp1 -and exp2

! expr

-not expr

exp1 -or exp2

exp1, exp2

范例:

将目前目录及其子目录下所有延伸档名是c 的档案列出来。

# find . -name "*.c"

将目前目录其其下子目录中所有一般档案列出

# find . -ftype f

将目前目录及其子目录下所有最近20 分钟内更新过的档案列出

# find . -ctime -20

指令名称:ln

使用权限:所有使用者

使用方式:ln [options] source dist,其中option 的格式为:

[-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}]

[--help] [--version] [--]

说明:Linux/Unix 档案系统中,有所谓的连结(link),我们可以将其视为档案的别名,而连结又可分为两种:硬连结(hard link)与软连结(symbolic link),硬连结的意思是一个档案可以有多个名称,而软连结的方式则是产生一个特殊的档案,该档案的内容是指向另一个档案的位置。硬连结是存在同一个档案系统中,而软连结却可以跨越不同的档案系统。

ln source dist 是产生一个连结(dist)到source,至于使用硬连结或软链结则由参数决定。

不论是硬连结或软链结都不会将原本的档案复制一份,只会占用非常少量的磁碟空间。

-f:链结时先将与dist 同档名的档案删除-d:允许系统管理者硬链结自己的目录-i:在删除与dist 同档名的档案时先进行询问-n:在进行软连结时,将dist 视为一般的档案-s:进行软链结(symbolic link)-v:在连结之前显示其档名-b:将在链结时会被覆写或删除的档案进行备份-S SUFFIX:将备份的档案都加上SUFFIX 的字尾-V METHOD:指定备份的方式--help:显示辅助说明--version:显示版本

范例:

将档案yy 产生一个symbolic link:zz

ln -s yy zz

将档案yy 产生一个hard link:zz

ln yy xx

名称:locate

使用权限:所有使用者

使用方式:locate [-q] [-d ] [--database=]

locate [-r ] [--regexp=]

locate [-qv] [-o ] [--output=]

locate [-e ] [-f ] <[-l ] [-c]

<[-U ] [-u]>

locate [-Vh] [--version] [--help]

说明:

locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的资料库,之后当寻找时就只需查询这个资料库,而不必实际深入档案系统之中了。在一般的distribution 之中,资料库的建立都被放在contab 中自动执行。

一般使用者在使用时只要用

# locate your_file_name

的型式就可以了。参数:

-u

-U

建立资料库,-u 会由根目录开始,-U 则可以指定开始的位置。

-e

将排除在寻找的范围之外。

-l

如果是1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到的档案。这会始速度减慢,因为locate 必须至实际的档案系统中取得档案的权限资料。

-f

将特定的档案系统排除在外,例如我们没有到理要把proc 档案系统中的档案放在资料库中。

-q

安静模式,不会显示任何错误讯息。

-n

至多显示个输出。

-r

使用正规运算式做寻找的条件。

-o

指定资料库存的名称。

-d

指定资料库的路径

-h

显示辅助讯息

-v

显示更多的讯息

-V

显示程式的版本讯息范例:

locate chdrv:寻找所有叫chdrv 的档案

locate -n 100 a.out:寻找所有叫a.out 的档案,但最多只显示100 个

locate -u:建立资料库

名称:ls

使用权限:所有使用者

使用方式:ls [-alrtAFR] [name...]

说明:显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录)。

-a 显示所有档案及目录(ls内定将档案名或目录名称开头为"."的视为隐藏档,不会列出) -l 除档案名称外,亦将档案型态,权限,拥有者,档案大小等资讯详细列出

-r 将档案以相反次序显示(原定依英文字母次序)

-t 将档案依建立时间之先后次序列出

-A 同-a ,但不列出"." (目前目录) 及".." (父目录)

-F 在列出的档案名称后加一符号;例如可执行档则加"*", 目录则加"/"

-R 若目录下有档案,则以下之档案亦皆依序列出

范例:

列出目前工作目录下所有名称是s 开头的档案,愈新的排愈后面:

ls -ltr s*

将/bin 目录以下所有目录及档案详细资料列出:

ls -lR /bin

列出目前工作目录下所有档案及目录;目录于名称后加"/", 可执行档于名称后加"*": ls -AF

名称:mv

使用权限:所有使用者

使用方式:

mv [options] source dest

mv [options] source... directory

说明:将一个档案移至另一档案,或将数个档案移至另一目录。

参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。

范例:

将档案aaa 更名为bbb:

mv aaa bbb

将所有的C语言程式移至Finished 子目录中:

mv -i *.c

名称:rm

使用权限:所有使用者

使用方式:rm [options] name...

说明:删除档案及目录。

把计:

-i 删除前逐一询问确认。

-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

-r 将目录及以下之档案亦逐一删除。

范例:

删除所有C语言程式档;删除前逐一询问确认:

rm -i *.c

将Finished 子目录及子目录中所有档案删除:

rm -r Finished

名称:rmdir

使用权限:于目前目录有适当权限的所有使用者

使用方式:rmdir [-p] dirName

说明:删除空的目录。

参数:-p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。

范例:

将工作目录下,名为AAA 的子目录删除:

rmdir AAA

在工作目录下的BBB 目录中,删除名为Test 的子目录。若Test 删除后,BBB 目录成为空目录,则BBB 亦予删除。

rmdir -p BBB/Test

名称:last

使用权限:所有使用者

使用方式:shell>> last [options]

说明:显示系统开机以来获是从每月初登入者的讯息

把计:

-R 省略hostname 的栏位

-num 展示前num 个

username 展示username 的登入讯息

tty 限制登入讯息包含终端机代号

范例:

shell>> last -R -2

johnney pts/1 Mon Aug 14 20:42 still logged in

johnney pts/0 Mon Aug 14 19:59 still logged in

wtmp begins Tue Aug 1 09:01:10 2000 ### /var/log/wtmp

shell>> last -2 minery

minery pts/0 140.119.217.115 Mon Aug 14 18:37 - 18:40 (00:03)

minery pts/0 140.119.217.115 Mon Aug 14 17:22 - 17:24 (00:02)

wtmp begins Tue Aug 1 09:01:10 2000

名称:passwd

使用权限:所有使用者

使用方式:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username]

说明:用来更改使用者的密码

参数:

-d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 只有具备root 权限的使用者方可使用.

-S 显示指定使用者的密码认证种类, 只有具备root 权限的使用者方可使用.

[username] 指定帐号名称.

名称:who

使用权线:所有使用者都可使用

使用方式:who - [husfV] [user]

说明:显示系统中有那些使用者正在上面,显示的资料包含了使用者ID,使用的终端机,从那边连上来的,上线时间,呆滞时间,CPU 使用量,动作等等。

把计:

-h:不要显示标题列

-u:不要显示使用者的动作/工作

-s:使用简短的格式来显示

-f:不要显示使用者的上线位置

-V:显示程式版本

名称:kill

使用权限:所有使用者

使用方式:

kill [ -s signal | -p ] [ -a ] pid ...

kill -l [ signal ]

说明:kill 送出一个特定的信号(signal) 给行程id 为pid 的行程根据该信号而做特定的动作, 若没有指定, 预设是送出终止(TERM) 的信号

把计:

-s (signal):其中可用的讯号有HUP (1), KILL (9), TERM (15), 分别代表着重跑, 砍掉, 结束; 详细的信号可以用kill -l

-p:印出pid , 并不送出信号

-l (signal):列出所有可用的信号名称

范例:

将pid 为323 的行程砍掉(kill):

kill -9 323

将pid 为456 的行程重跑(restart):

kill -HUP 456

名称:top

使用权限:所有使用者

使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]

说明:即时显示process 的动态

把计:

d:改变显示的更新速度,或是在交谈式指令列( interactive command)按s

q:没有任何延迟的显示速度,如果使用者是有superuser 的权限,则top 将会以最高的优先序执行

c:切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S:累积模式,会将己完成或消失的子行程( dead child process ) 的CPU time 累积起来s:安全模式,将交谈式指令取消, 避免潜在的危机

i:不显示任何闲置(idle) 或无用(zombie) 的行程

n:更新的次数,完成后将会退出top

b:批次档模式,搭配"n" 参数一起使用,可以用来将top 的结果输出到档案内

范例:

显示更新十次后退出;

top -n 10

使用者将不能利用交谈式指令来对行程下命令:

top -s

将更新显示二次的结果输入到名称为top.log 的档案里:

top -n 2 -b < top.log

指令:clear

用途:清除萤幕用。

使用方法:在console 上输入clear。