Linux 常用命令

来源:互联网 发布:水质监测数据指标 编辑:程序博客网 时间:2024/04/23 18:22

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 u
drwxrwxrwx 2 root sys 512 Jul 28 1999 uacn
drwxrwxrwx 5 root sys 512 Jul 27 1999 udk
lrwxrwxrwx 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个字符为其它用户域,域中字符的含义如下:
l在类型域中:
d 表示此文件是一个目录
-表示此文件是一个普通文件
b 表示此文件是一个特殊的块设备I/O文件
c 表示此文件是一个特殊的字符设备I/O文件
l 表示此文件是一个连接文件。在其文件名称后紧跟与它连接的文件路径及名称。如:
unix -> /stand/unix
l在“用户主”、“同组用户”、“其它用户”域中:
r 表示有读权限。含义是可以拷贝或显示该文件或目录中的内容。
w 表示有写权限。含义是可以改变或修改该文件。
x 表示有执行权限。含义是可以执行该文件或用cd命令进入该目录,在该目录中建
立文件或子目录等。
-表示无权限。


chmod——变更档案模式( change mode )
这个指令是用来更改档案的存取模式( access mode )。在 UNIX 一个档案上有可读®可写(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>newfile
this is a text
Ctrl+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 filename


cd——改变当前目录
格式: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 ? y


mkdir——创建目录
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 CMD
1194 ttyp0 00:00:00 sh
#ps -t tty1a (显示设备tty1a上的进程)
如上所示:我们可以经由 ps 取得目前 processes 的状况,如 PID(进程号) , TTY(设备名)、TIME(时间)、CMD(程序名) 等。


kill——杀进程

kill 指令的用途是送一个信号给某一个进程。因为大部份送的都是用来杀掉进程 ,因此称为 kill 。
格式:
kill [ -SIGNAL ] pid ...
kill -l
SIGNAL :为一个讯号的数字,从 0 到 31 ,其中 9 是 SIGKILL ,也就是一般用来杀掉一些无法正常终止进程的讯号。
你也可以用 kill -l 来察看可代替 signal 号码的数目字。


3.用户操作指令


Who——查询目前有那些人在线
例:
#who
ilasnt1 ttyp0 May 24 10:23
root ttyp3 May 24 11:27
root ttyp4 May 24 09:39

w——查询目前有那些人在线上,同时显示出那些人目前的工作
例:
#w
12:17pm up 3:59, 3 users, load average: 2.03, 2.02, 2.00
User Tty Login@ Idle JCPU PCPU What
ilasnt1 ttyp0 10:23am 1:54 1 - -sh
root ttyp3 11:27am 2 1 - w
root ttyp4 9:39am 38 1 - -sh


chgrp——改变组的属性
格式:
chgrp [-R] group file...
例:
#chgrp library file1 file2… (将file1、file2…等的用户组改为library)



chown——改变文件或目录的所有者
格式:
chown [-R] owner[:group] file...
例:
#chown ilasnt1 ilasII_GB (将ilasII_GB的用户主改为ilasnt1)


passwd——更改用户口令
格式:
passwd 用户名 (后面不跟用户名,为修改root的口令)


4.网路指令
UNIX 提供网路的连接,使得你可以在各个不同的机器上做一些特殊的事情。有些工作可以利用 UNIX 的网路指令,在你的位子上连到各个不同的机器上工作。如此一来,即使你在寝室,也能轻易的连至系上或计中来工作,不用像以前的人必须泡在冷冰冰的机房面。
这些网路的指令如下所述:


telnet——仿真终端程序
telnet 是一个提供 user 经由网路连到 remote host。
格式:
telnet [ hostname | ip-address ] [ port ]
其中:
hostname:为一个像 ccsun1 或是 ccsun1.cc.nctu.edu.cn 的 name address;
ip-address:则为一个由四个小於 255 的数字组成的IP地址,如 140.113.17.173 、210.26.147.1等。
Port:为一些特殊的程式所提供给外界的沟通点。如对方没要求,则不需要此项。
例:
#telnet ccsun1
#telnet 140.113.17.173


ftp——文件传输协议
ftp 的意义是 File Transfer Program ,是一个很常应用在网路档案传输的
程序。
格式:
ftp [ hostname | ip-address ]
其中 hostname | ip-address 的意义同telnet 。
在进入 ftp 之後,如果与 remote host 连接上了,它将会询问你用户名
与密码,如果输入对了就可以开始进行档案传输。
ftp中常用命令:
ascii:将传输模式设为 ascii 模式。通常用於传送文字档。
binary:将传输模式设为 binary 模式,通常用於传送执行档,压缩档与影像档等。
cd remote-directory:将 remote host(远方)上的工作目录改变。
lcd [ directory ]:更改 local host (本地)的工作目录。
ls [ remote-directory ] [ local-file ]:列出 remote host 上的档案。
get remote-file [ local-file ]:取得远方的档案。
mget remote-files :可使用通用字元一次取得多个档案。
put local-file [ remote-file]: 将 local host 的档案送到 remote host。
mput local-files :可使用通用字元一次将多个档案放到 remote host 上。
help [ command ]: 线上辅助指令。
mkdir directory-name :在 remote host 造一个目录。
prompt 更改交谈模式,若为 on 则在 mput 与 mget 时每作一个档案之传
输时均会询问。
quit/bye 离开ftp .



5.其他指令

例:
#who
ilasnt1 ttyp0 May 24 10:23
root ttyp3 May 24 11:27
root ttyp4 May 24 09:39

w——查询目前有那些人在线上,同时显示出那些人目前的工作
例:
#w
12:17pm up 3:59, 3 users, load average: 2.03, 2.02, 2.00
User Tty Login@ Idle JCPU PCPU What
ilasnt1 ttyp0 10:23am 1:54 1 - -sh
root ttyp3 11:27am 2 1 - w
root ttyp4 9:39am 38 1 - -sh


chgrp——改变组的属性
格式:
chgrp [-R] group file...
例:
#chgrp library file1 file2… (将file1、file2…等的用户组改为library)



chown——改变文件或目录的所有者
格式:
chown [-R] owner[:group] file...
例:
#chown ilasnt1 ilasII_GB (将ilasII_GB的用户主改为ilasnt1)


passwd——更改用户口令
格式:
passwd 用户名 (后面不跟用户名,为修改root的口令)


4.网路指令
UNIX 提供网路的连接,使得你可以在各个不同的机器上做一些特殊的事情。有些工作可以利用 UNIX 的网路指令,在你的位子上连到各个不同的机器上工作。如此一来,即使你在寝室,也能轻易的连至系上或计中来工作,不用像以前的人必须泡在冷冰冰的机房面。
这些网路的指令如下所述:


telnet——仿真终端程序
telnet 是一个提供 user 经由网路连到 remote host。
格式:
telnet [ hostname | ip-address ] [ port ]
其中:
hostname:为一个像 ccsun1 或是 ccsun1.cc.nctu.edu.cn 的 name address;
ip-address:则为一个由四个小於 255 的数字组成的IP地址,如 140.113.17.173 、210.26.147.1等。
Port:为一些特殊的程式所提供给外界的沟通点。如对方没要求,则不需要此项。
例:
#telnet ccsun1
#telnet 140.113.17.173


ftp——文件传输协议
ftp 的意义是 File Transfer Program ,是一个很常应用在网路档案传输的
程序。
格式:
ftp [ hostname | ip-address ]
其中 hostname | ip-address 的意义同telnet 。
在进入 ftp 之後,如果与 remote host 连接上了,它将会询问你用户名
与密码,如果输入对了就可以开始进行档案传输。
ftp中常用命令:
ascii:将传输模式设为 ascii 模式。通常用於传送文字档。
binary:将传输模式设为 binary 模式,通常用於传送执行档,压缩档与影像档等。
cd remote-directory:将 remote host(远方)上的工作目录改变。
lcd [ directory ]:更改 local host (本地)的工作目录。
ls [ remote-directory ] [ local-file ]:列出 remote host 上的档案。
get remote-file [ local-file ]:取得远方的档案。
mget remote-files :可使用通用字元一次取得多个档案。
put local-file [ remote-file]: 将 local host 的档案送到 remote host。
mput local-files :可使用通用字元一次将多个档案放到 remote host 上。
help [ command ]: 线上辅助指令。
mkdir directory-name :在 remote host 造一个目录。
prompt 更改交谈模式,若为 on 则在 mput 与 mget 时每作一个档案之传
输时均会询问。
quit/bye 离开ftp .



5.其他指令


vi——编辑命令

任何用户最常做的事要数创建和编辑文件,包括文档、报告和文字,vi(Visual Editor)是一个有效而相对简单的全荧幕编辑,使用vi,只要记著少量基本指令,就可以开始起步,再学习其他更复杂的指令,而系统管理员则使用vi管理和维护系统。
vi是包含在SCO System V作业系统中的全荧幕编辑,其实,vi不独存在於SCO UNIX内,而是UNIX内相当普及的文件编辑。开启文件无论是开启新档或修改旧文件,都可以使用vi。
格式:
#vi filename
如果文件是新的,就会在荧幕底部看到一个信息,告诉用户正在创建新文件。如果文件早已存在,vi则会显示文件的首廿四行,用户可再用游标(cursor)移动文件。
这是执行Vi后的屏幕样式:


上面是一个经vi开启的模拟文件,一行开始处的波折号(~)表示文件的结尾。 vi使用了两种状态,一是指令态(Command Mode),另一是插入态(Insert Mode)。当vi处於指令态时,打入的内容会视作指令来解释;另一方面,当vi处於插入态时,就可以打入正文(text)给文件。
大多数vi指令是单字符,由插入态改变为指令态,按〈Esc〉键;而由命令态转为插入态,则可以使用下面的插入令,直接打入,无需再按〈Return〉键。
l插入
i 在游标处插入正文
I 在一行开始处插入正文
a 在游标後追加正文
A 在行尾追加正文
o(小写欧) 在游标下面新开一行
O(大写欧) 在游标上面新开一行
要记著一点,在插入态处,不能打入指令,必需先按〈Esc〉键,返回指令态。假若户用不知身处何态,也可以按〈Esc〉键,不管处於何态,都会返回指令态。
l存盘及退出
在修改文件时,如何存档及退出指定文件都非常重要。在vi内,行使存档或退出的指令时,要先按冒号(:),改变为指令态,用户就可以看见在荧幕左下方,出现冒号(:),显示vi已经改为指令态,可以进行存档或退出等工作。
下面就是一些这方面常用的指令。
:q! 放弃任何改动而退出vi,也就是强行退出
:w 存档
:wq 存档并退出vi
:x 与wq的工作一样
:zz 与wq的工作一样删除正文
l删除
删除或修改正文都是利用插入态,故此,下面所提及的指令只需在插入态内,直接选入指令即行。
x 删除游标处字符(Character)
nx 删除游标处後n个字符
nX 删除游标处前n个字符
ndw 删除游标处下n个单词(word)
dd 删除整行
d$或D 删除由游标至该行最末
u 恢复前一次所做的删除
l修改正文
当使用vi修改正文,加减字符时,就会采用另一组在插入态操作的指令。
— r char由char代替游标处的字符
—Rtext〈Esc〉由text代替游标处的字符
—cwtext〈Esc〉由text取代游标处的单词
—Ctext〈Esc〉由text取代游标处至该行结尾处
—cc使整行空白,但保留游标位置,让你开始打入
—如删除指令一样,在指令前打入的数,表示执行该指令多少次。
l正文模式检索
要检索文件,必需在指令态下进行。所谓「模式」,就是一个特定字符串,其中可含空格符。
/str〈Return〉 向前搜寻str直至文件结尾处
?str〈Return〉 往後搜寻str直至文件开首处
n 同一方向上重复检索
N 相反方向上重复检索
vi缠绕整个文件,不断检索,直至找到与模式相匹配的下一个出现。其他如果要在 vi执行期间,转到shell执行,使用惊叹号(!)执行系指令,例如在vi期间,列出当前目录内容,可以打入:!If
另一方面,用户可以在主目录中创建.exrc环境文件,用set打入选项,每次调用vi时,就会读入.exrc中的指令与设置。下面是.exrc环境文件的实例:
set wrapmarging=8
set showmode
set autoindent
set number


备份命令:tar(c)
tar 是对非特权用户最易用和最可靠的实用程序(utility),从归档介质上保留和恢复文件,亦能从多文件归档中抽取单个文件。
tar 归档使用文件和目录的相对或绝对路径名。
打入 tar,即会显示所有变量选项;
如:
tar -{txruc}[0-9vfbkelmnopwAFLTP] [tapefile] [blocksize] [tapesize] files...
Key Device Block Size(K) Tape
0 /dev/rfd048ds9 18 360 No
1 /dev/rfd148ds9 18 360 No
2 /dev/rfd096ds15 10 1200 No
3 /dev/rfd196ds15 10 1200 No
4 /dev/rfd0135ds9 18 720 No
5 /dev/rfd1135ds9 18 720 No
6 /dev/rfd0135ds18 18 1440 No
7 /dev/rfd1135ds18 18 1440 No
8 /dev/rStp0 20 0 Yes
9 /dev/rctmini 20 0 Yes
10 /dev/rdsk/fp03d 18 720 No
11 /dev/rdsk/fp03h 18 1440 No
12 /dev/rdsk/fp03v21 10 20330 No
其中:
“cv”是创建归档;
“cv#”用於来自 /etc/default/tar 的设备号 #;
“rv”追加已有归档;
“uv”更新在已有归档上的文件;
“tv”显示归档内容表;
“xv”从归档中抽取文件;
“f”从指定文件中读入或写出;
“L”使 tar跟随符号连接继续追查下去,默认情况下则会忽略符号连接。
例:
(1)要归档指定文件,而复盖盘上的已有数据,指令如下:
$cd pub
$tar cv8 ascii greek (8为磁带机)
volume end at 1199k, block factor=5k
seek=0k a ascii 3k
seek=3k a greek 1k
(2)要列出 tar 归纳的内容:
$tar tv8
rwxrwxrwx201/50 1731 Apr 11 00:58 1997 web50/WEB/srchbib.htm
rwxrwxrwx201/50 1002 Apr 11 00:58 1997 web50/WEB/readinfo.htm
rwxrwxrwx201/50 1070 Apr 11 00:58 1997 web50/WEB/stflag.gif
rwxrwxrwx201/50 45 Mar 22 01:27 1997 web50/WEB/cgi-bin/ILASPROF
rwxr-xr-x201/50 136799 Apr 10 04:10 1998 web50/WEB/cgi-bin/openhold

注意:创建 tar 归档,使用相对路径名,否则,恢复另一系统就会盖写其他系统的文件。如:
#tar cv8 /etc/motd
#cd /tmp
#tar xv8
x /etc/motd, 943 bytes,2k



Df——显示硬盘空间使用情况
磁盘空间以块为单位进行分配,典型的块是512字节。
例:
#df -v
Mount Dir Filesystem blocks used free %used
/ /dev/root 2123740 990450 1133290 47%
/stand /dev/boot 100000 19796 80204 20%
/u /dev/u 15000000 12529568 2470432 84%


Du——检测一个目录和(递归地)所有它的子目录中的文件占用的磁盘空间,用块大小标识。
例:
#du
#du -s 只显示整个目录占用的空间


Find——从指定路径开始查找带有规定特征的文件
例:
#find / -name ilas.ini (从根目录开始递归地寻找出名为ilas.ini的文件,并将它所在目录显示在屏幕上)




Date——显示系统日期
例:
#date
Thu May 24 14:31:49 CST 2001


format——软盘格式化
例:
#format /dev/rfd096ds15 (格式化5寸高密软盘(A驱动器)



Haltsys——紧急关机
格式:#haltsys 回车 (此时未执行关闭数据库等,最好用Shutdown)



Shutdown——多用户情况下关机
格式:
#shutdown -g0 -y -i0


Linux常用命令介绍
谈到Linux命令很多人都望而生畏,因为Linux的命令太多了,而且每个命令都有很多选项,但是Linux命令又是Linux系统里最重要的工具,学习Linux命令是学习Linux必不可少的一个环节,也是Linux入门基础。所以在介绍Linux的其它方面之前,我们先介绍一下Linux的常用命令,希望我的这点简单介绍对你了解Linux命令有所帮助。

在介绍所有的命令之前,先介绍一下Linux的在线帮助man。在Linux下,当你要查找一个命令的用法的,你可以通过 man 命令名 来源得命令的详细说明。因为每个Linux都有一份man文档,所以介绍命令的时候我们只是简直介绍一下命令的学用选项。如果想查看命令的详细说明,请自己看man。下面是man各小节的内容:
1 用户命令。
2 系统调用。
3 库函数。
4 特殊文件(设备和网络接口)。
5 文件格式。
6 游戏和演示。
7 系统环境、表格和宏。
8 系统管理和相关命令。


apropos 依据所给关键字查找相关的命令和系统调用
格式:apropos keyword
例:查找与ftp相关的命令和系统调用

$apropos ftp
注:类似的命令有man -k。man -k 其实就是执行apropos

at 在某一特定时间执行指定的命令
格式:at [-V][-q 队列][-f 文件][-m] time
选项说明:
-V 显示标准的错误输出。
-f 可将作业存在一个文件中,用这个选项指定文件。例如一个shell文件。
-q 指定队列名称,默认为c。
-m 执行后给用户发邮件。
time 指定开始执行的时间。时间格式为: HH:MM,日期格式:MM/DD/YY或MM.DD.YY或MMDDYY。 下面的例子演示了在2004年3月11日21点34分执行一个at命令。

$at 21:34 03/11/04
执行这条命令后会得到一条warning:
commands will be executed using (in order) a)$SHELL b) login shell c)/bin/sh。然后就出现“at>”的提示符。这时你就可以输入你要执行的命令了,结束后按Ctrl+d。你就可以去喝茶了,到时间后系统会自动执行它。

相关配置文件:
/etc/at.allow 如果这个文件存在,仅允许这个文件里列出的用户使用at。

/etc/at.deny 如果这个文件存在,该文件列出的用户都不能使用at服务。当 这个文件为空时,任何用户都可以使用at,这是默认配置。

当运行at命令时,先检查/etc/at.allow文件是否存在,如果不存在,再检查 /etc/at.deny文件是否存在。不管这两个文件是不是存在,root用户都可以执行at命令。

相关命令:
atq:列出用户待执行的任务,除了root用户的外,每个用户的任务都将被列出。

atrm:通过任务号删除at任务。

batch:当系统负载允许的时候执行命令。比如当负载低于0.8或者一个指定的值时,指行atrun。

cat 查看文件内容,从键盘读取数据,合并文件等
格式:cat [-b][-A][-E][-T][-n][-s][-v] 文件名
选项说明:
-b 不显示文件中的空行。
-A 相当于 -v -E -T (-vET)。
-E 在文件的每一行行尾加上“$”字符。
-T 将文件中的Tab键用字符“^I”来显示。
-n 在文件的每行前面显示行号。
-s 将连续的多个空行用一个空行来显示。
-v 显示除Tab和Enter之外的所有字符。
下面的命令演示了如何显示file文件中的行号

$cat -n file

chmod 修改文件权限
格式:chmod 选项 文件或目录名
选项说明:
u 文件所有者
g 文件所属组
o 其它用户
+ 增加权限
- 取消权限
= 赋给权限
a 所有用户
r 读权限
w 写权限
x 执行权限
下面的命令演示了如何使所有用户都可以读写file文件

$chmod a+rw file
chown 改变文件所有者
格式:chown [-R][-c][用户名][组名] 文件或目录名
选项说明:
-c 文件属主改变时显示说明。
-R/r 改变目录下的文件及其子目录下所有文件的属主。
下面的命令演示了如何改变 dir 目录下的文件及其子目录下的文件的属主为bugboy

$chown -R bugboy dir


cp 复制文件
格式:cp 选项 源文件名 目标文件名
选项说明:
-R 复制整个目录。
-f 删除己存在的目标文件。
-i 使用-f遇到删除文件时给出提示。
下面的命令演示了如何把 file 文件复制到当前用户的根目录下

$cp file ~/

crontab 制定计划任务
crontab通过cron服务使用户能够在指定的时间执行某些程序,它通过cron复制,创建列出,删除crontab文件来管理用户权限和计划。

命令格式:crontab [-u username] [-l] [-e] [-r]
选项说明:
-e 编辑当前用户的crontab文件,或者当一个crontab文件不存在时,创建一个crontab 文件。编辑并保存后文件被当前用户的crontab安装。
-l 列出当前crontab文件内容。
-r 删除当前用户的crontab文件。
-u username 指定用户名。
crontab文件格式:

crontab文件有六个域,每个域之间用空格或者Tab键分开,前五个域都是整数或者*,格式如下(括号里面是取值范围):

分钟(0-59) 小时(0-23) 日(1-31) 月(1-12) 星期(0-6) 要执行的命令
其中星期取值0指星期日,其它取值递推。前面五个域,每个域都可以用*表示所有合法的值,或者用一个列表列出合法的值,各值之间用“,”隔开,也可以用“-”表示一个范围。下面的命令演示每个星期,星期日到星期四晚上23:30分关机。

30 23 * * 0-4 halt -p

下面的例子示出每星期星期一到星期五3:15分清除用户目录下的core文件

15 3 * * 1-5 find $HOME -name core 2>/dev/null |xargs rm -f
下面是一个crontab文件的例子,请用crontab -e 命令编辑。

SHELL=/bin/bash
PATH=/usr/bin:/bin:/usr/sbin:/sbin
MAILTO=bugboy
HOME=/home/bugboy
30 23 * * 0-4 halt -p

前面四行定义环境变量,最后一行是执行的命令,你可以定义要执行多个命令。如果你的crontab文件已经正确编辑,保存退出后会得到一条"crontab:installing new crontab" 的信息。

相关文件:
/etc/cron.d/cron.allow 如果这个文件存在,文件中包含的用户名可以使用crontab。

/etc/cron.d/cron.deny 如果这个文件存在,文件中包含的用户不能使用crontab。

你可以自己编辑这两个文件,注意每个用户名占一行。

df 查看磁盘剩余空间
格式:df [-t][-x][-k][-p][-a][-m][filename]
选项说明:
-t 只输出类型列在fstype中的文件系统。
-x 只输出类型没有列在fstype中的文件系统。
-k 显示空间以K为单位。
-m 显示空间以M为单位。
-a 将空间为0的文件系统也输出。
filename 指定要查看的文件的大小。
fdisk/sfdisk 查看硬盘分区信息
格式:fdisk -l [-u] [device ...]
fdisk -s partition

选项说明:
-u 列出分区表的时候以扇区的大小代替柱面大小。
-l 列出给定设备的分区表,如果没有给定设备,则列出/proc/partions中设备的分区表。
-s partition 给出partition分区的大小(以块为单位)。
file 识别文件类型
格式:file 文件名
find 查找文件
格式:find [路径][匹配表达示]
其中匹配表达示有几种类型:
-name filename 查找指定名称的文件。
-user username 查找指定用户名的文件。
-group grpname 查找指定级名的文件。
-print 显示查找的结果。
-size n 查找大小为n块的文件,一块等于512字节。符号“+n”表示查找大小大于n块的文件;符号“nc”表示查找大小为n个字符的文件,同样的也有符号“+nc”。
-inum n 查找索引结点号(i-node)为n的文件。
-atime n 查找n天前被访问的文件。“+n”表示超过n天前被访问的文件;“-n”表示不超过n天前被访问的文件。
-mtime n 类似于atime,但是检查的是文件内容被修改的时间。
-ctime n 类似于atime,但检查的是文件索引结点被改变的时间。
-perm mode 查找与给定权限匹配的文件,必须以八进制的形式给出访问权限。
-newer file 查找比指定文件新的文件,即最后修改时间离现在较近。
-exec command 对匹配文件执行command命令,command后用了个大括号包括文件名。command必须以反斜杠和一个分号结尾。
-ok command 执行command的时候请求用户确认。其它与-exec相同。
例:查找当前目录下所有以.bak结尾的文件,并删除它们
$find . -name "*.bak" -exec rm {} /;
注:这里 *.bak 必须要用单引号或者双引号引起来,或者可以写成/*.bak。

head 输出文件内容前面的部分
格式:head [选项][文件]……
选项说明:
-n 输出文件的前n行,默认输出10行。
-c 指定输出文件的大小,单位为byte。
kill 终止进程
格式:kill [-s|p][-a] PID
选项说明:
-s 指明发送给进程的信号。例如-9(强行终止),默认发送TERM信号。
-p 显示进程的ID,不发送信号。
-a 终止所有进程。
0 给所有在当前进程组中的进程发送信号。
-1 给所有进程号大于1的进程发送信号。
less 交互式显示文件内容
格式:less 文件名
说明:
可以通过C-v(Page-Down)、C-b(Page-Up)向后向前翻页,C-p、C-n向后向前移一行。这个命令和后面要说的more命令都可以按q键退出。

ln 在文件之间建立链接
格式:ln [-b][-d][-F][-f][-i][-n][-s][-v] 源文件 目录文件或目录
选项说明:
-b 为删除的文件建立备份。
-d 允许root用户建立硬链接。
-F 与b相同。
-f 强行删除目标文件。
-i 在删除文件时给出提示。
-n 当目标文件是目录的符号链接时,替代该符号链接。
-s 用符号链接代替硬链接(建立符号链接)。
-v 输出被链接文件的文件名。
ls 用于浏览目录,查看当前目录下的文件和文件名
格式:ls [选项]
选项说明:
-a 显示所有文件(包括隐藏文件)。
-l 显示文件的详细信息。
-k 显示文件大小,以K为单位。
-color 显示文件时用不同颜色加以区别文件类型。
-d 将根目录作为文件显示。
more 一页一页地显示文件内容
格式:more [选项] 文件名
选项说明:
+n 由第n行开始显示
+/str 由含有str字符串的地方开始显示。
mount 加载文件系统
格式:mount 磁盘或分区的设备文件 载入点 选项
选项说明:
-t 文件系统类型(fat32为vfat)
-o 选项 常用的选项有codepage,iocharset(对于中文codepage=936,iocharset=gb2312)
-loop 挂载ISO文件时用
举个例子,挂载/dev/hda5到/mnt/wind目录下并且目录支持中文,命令如下:

#mount -t vfat /dev/hda5 /mnt/wind -o codepage=936,iocharset=gb2312

mv 重命名文件或移动文件
格式:mv [-b][-f][-i][-u][-v] 源文件 目标文件或文件夹
选项说明:
-b 为源文件作备份
-f 文件重命名时强制覆盖己有文件。
-i 覆盖文件时给出提示。
-u 目标文件比源文件新时不覆盖。
-v 移动文件时给出相应的提示。
oggenc 压缩音乐文件为.ogg格式
格式:oggenc 文件名
把*.wav文件压缩为*.ogg格式

$oggenc *.wav
同等条件下,ogg会比mp3获得较好的音乐效果

ps 查看进程状态
格式:ps [选项]
选项说明:
-e/A 列出所有进程。
-u 选择有效的用户ID。
-p 选择指定终端下的进程。
-C 选择指定的文件名。
-f 列出所有详细信息。
-l 按长格式显示。
-j 按job格式显示。
-x 选择没有控制终端的进程。
quota 显示磁盘的使用情况,一般用户可以查看自己使用磁盘的权限
格式:quota [-g][-u][-v][-p] 用户名或组名
选项说明:
-g 显示用户所在组使用磁盘的权限。
-u 显示用户自己使用磁盘的权限。
-p 使显示信息简洁化。
rename 批量修改文件名
格式:rename from to file...
选项说明:
from 源字符。
to 目标字符。
file 要改名的文件
下面的命令演示了把所有文件的后辍由rm改为rmvb

$rename .rm .rmvb *
下面的命令把所有文件名中的大写改为小写

$rename 'tr/A-Z/a-z/' *
rpm redhat软件包管理工具
格式:rpm [选项] 文件名|软件包名
选项说明:
--version 获得rpm程序的版本信息。
-vv 获得详细的帮助信息。
-v 打印冗长的信息,常与-i选项合用,获得安装进度。
-i 安装软件包。
-U 升级软件包,如果没有旧版的软件包就安装它。
-F 更新软件包,当有旧的软件包的时候。
--force 相当于--replacepkgs,--repalcefiles,--oldpackage。
--nodigest 不验证软件包的独立性。
--nosignature 不验证软件包或者页眉签名。
--nodeps 不检查软件包的安装路径。
--oldpackage 用新软件包替换旧软件包。
--prefix PATH 指定软件包的安装路径。
--relocate OLDPATH=NEWPATH 把原来安装在“OLDPATH”下的软件包重新安装到“NEWPATH”去。
--replacefiles 安装软件包,即使它们替换掉其它的文件。
--replacepkgs 替换掉已经安装的同名软件包。
-e|--erase 软件包名 删除软件包。
--allmatches 删除软件包的所有版本。
-q 查询已经安装的软件包。
-a 选择所有软件包。
-h 当解开软件包时,打印50个标记,通常与iv选项一起用。
特别说明:
在删除软件包时,软件包的名称不等于安装时的文件名。通常一个rpm包由软件包名称+版本号+发行号+发行平台+后辍构成。比如有个文件名为bugboy-1.01-1.i386.rpm,那么它的软件包名称是bugboy,版本号是1.0.1,发行号是1,发行平台是intel 386。

rm 删除文件或者目录
格式:rm [-d][-i][-r][-v][-f] 文件名或目录名
选项说明:
-d 使用这个选项后,rm大体想当于unlink。
-i 删除每个文件时给用户提示。
-r 删除整个目录,包括文件和子目录。
-v 删除每个文件时给出提示。
-f 强制删除,并且不给提示。
sox 转换音频文件
格式:sox [选项] from [选项] to
选项说明:
-t 文件格式。
-r 采样频率。
例:把file1.wav转换成file1.au文件

$sox file1.wav file1.au

把file1.wav 转换成file1.voc文件,并把采样频率由10000 Hz降为5000 Hz

$sox -r 10000 file1.wav -r 5000 file1.voc
减小文件噪音,让文件通过低通滤波器

$sox file1.wav file1.voc lowp 2200
注:对于一些没有许可授权的文件格式,sox不支持

su 改变当前用户的ID。
tail 输出文件内容后面的部分
格式:tail [选项] 文件名
选项说明:
-n 只显示后面的n行。
-f 动太显示,常用于跟踪消息文件。
tar 解压或压缩文件
格式:tar [选项] 文件[文件1……] 目录[目录1……]
选项说明:
-A 将一个tar文件追加到一个存档中。
-c 生成一个新的存档文件。
--delete 从存档中删除。
-r 将文件添加到一个存档的末尾。
-l 列出一个存档的内容。
-u 仅将些存档中内容较新的文件添加到存档中。
-x 从存档中解压缩文件。
-v 详细地列出处理过的文件的信息。
-z 用gzip来处理文件。
--remove-files 将文件解压之后就删除它们。
-Z 用compress来处理文件。
注意:选项中必须包含有A c d r t u x中的一个或多个。

top 查看CPU的使用率,修改进程运行优先级
格式:top 选项
选项说明:
-d delay 指定刷新的秒数。
-p pid 查看指定pid的CPU使用率。
默认情况下进程按CPU使用率排序,可按PID(N),时限(A),常驻内存使用率(M),时间(T),和CPU使用率(P)来排序。

type 查看一个命令所在路径
格式:type command
例:查找ls命令所在路径

$type ls
umount 卸载系统
格式:umount 磁盘或分区的设备文件(也可以是载入点)
useradd 添加用户或更新新创建用户的默认信息
格式:useradd 选项
选项说明:
-c comment 描述新用户帐号,通常为用户全名。
-d home_dir 设置用户主目录,默认值为用户的登录名,并放在/home目录下。
-D 创建新帐号后保存为新帐号设置的默认信息。
-e expire_date 用MM/DD/YYYY格式设置帐号过期日期。
-f inactivity 设置口令失效时间,该值为0使口令失效后帐号立即失效,为-1使该选项失效。
-g 设置基本组。
-k skel_dir 设置框架目录,该目录包含用户的初始配置文件,创建用户时该目录下的文件都被复制到用户主目录下。
-m 自动创建用户主目录,并把框架目录(默认为/etc/skel)下的文件复制到用户主目录下。
-M 不创建用户主目录。
-r 允许保留的系统帐号使用用户ID创建一个新帐号。
-s shell 指定用户的登录shell。
-u user_id 设置用户ID。
例:#useradd -m -g users -G Wheel,student -s /bin/sh -c "Yan Dingcheng" bugboy
例用usermod修改用户帐号时各选项与useradd命令相似。

userdel 删除用户帐号
格式:userdel username
选项说明:
-r 删除帐号时连同帐号主目录一起删除。
注意:删除用户帐号时非用户主目录下的用户文件并不会被删除,管理员必须以find命令搜索删除这些文件。下面这条命令删除bugboy用户的所有文件:

#find / -user bugboy -exec rm {} /;
whatis 查看可以使用的man page和命令的基本功能介绍
例:$whatis top
whereis 定位可执行文件、源代码文件、帮助文件在文件系统中的位置
格式:whereis [-bmsu] [BMS 目录名 -f ] 文件名
选项说明:
-b 定位可执行文件。
-m 定位帮助文件。
-s 定位源代码文件。
-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B 指定搜索可执行文件的路径。
-M 指定搜索帮助文件的路径。
-S 指定搜索源代码文件的路径。
w 查看登录用户和他们正在做什么
格式:w [-hsfV] [user]
选项说明:
-h 不打印信息头。
-s 使用短格式显示信息。
-f 打印用户来源。
-V 显示版本信息。
who 查看当前用户的便当情况
格式:who [-i][-u][-m]
选项说明:
-i 显示用户的活动状况。
-u 与-i相同。
-m 显示用户自身的情况。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 高铁票过了时间怎么办 网购火车票丢了怎么办 改签没有票了怎么办 火车票取了没赶上车怎么办 上车后车票丢了怎么办 晒了吗任务过期怎么办 坐火车买了站票怎么办 坐火车忘记带票怎么办 距离二本线差几分怎么办 行李包落火车候车厅怎么办 高铁票买错地点怎么办 高铁票买错日期怎么办 票买错时间了怎么办 上高铁了票丢了怎么办 上车前高铁票丢了怎么办 高铁安检没收的东西怎么办 高铁安检员老了怎么办 高铁安检喷雾拍照了怎么办 十个小时的高铁怎么办 华为开机需要激活码怎么办 高铁提前上车了出站怎么办 买火车票忘记带身份证怎么办 买高铁票没赶上怎么办 电脑放视频没有声音怎么办 内业计算中角度超限怎么办 遇到飞机出故障乘客怎么办 模拟城市5矿产满了怎么办 模拟城市5劳工短缺怎么办 模拟城市5土地价值低怎么办 考上研究生想二战研究生学籍怎么办 小米3屏幕花屏怎么办 狗被城管抓了怎么办 隔壁家的狗扰民怎么办 遛狗碰到碰瓷老太太怎么办 碰到保安碰瓷的人怎么办 碰到碰瓷的车怎么办 商品房楼上邻居违规装修怎么办 遇到不讲道理的邻居怎么办 邻居告我我该怎么办 丈夫判刑十年回来妻子怎么办 有人发色情信息给妻子怎么办