下面主要讲解UNIX下基本命令的使用,由于时间和篇幅的原因,无法写出所有UNIX命令。你在使用这里没有列出的命令时,可以使用“--help”参数查询该命令所附的帮助.比如: ls -help将显示ls命令的详细信息. 同时,你也可以利用man来查询更详细的使用说明。直接敲入man将显示所有命令的信息.如果你只想看一个命令的信息就用如下格式 man <命令名>
比如在UNIX系统中敲入man ls将显示ls的详细信息. 按q键退出man界面.
如下命令介绍按字母顺序排列:
命令:at
介绍:at, batch, atq, atrm:安排,检查,删除队列中的工作。
at [-V] [-q 队列] [-f 文件名] [-mldbv] 时间
at -c 作业 [作业...]
atq [-V] [-q 队列] [-v]
atrm [-V] 作业 [作业...]
batch [-V] [-q 队列] [-f 文件名] [-mv] [时间]
at 在设定的时间执行作业。
atq 列出用户排在队列中的作业,如果是超级用户,则列出队列中的所有工作。
atrm 删除队列中的作业。
batch 用低优先级运行作业,只要系统的loadavg(系统平均负载)<1.5(或者在atrun中设定的值)它就开始执行作业。
超级用户可以在任何情况下使用at系列的命令。
一般用户使用at系列命令的权利由文件 /etc/at.allow,/etc/at.deny控制。
如果/etc/at.allow存在,则只有列在这个文件中的用户才能使用at系列的命令。
如果/etc/at.allow文件不存在,则检查文件/etc/at.deny这个文件。 只要不列在这个文件中的用户都可以使用at系列的命令。
缺省的配置是/etc/at.deny为一个空文件,这表明所有的用户都可以使用at系列的命令。
范例:
at -f work 4pm + 3 days 在三天后下午4点执行文件work中的作业。
at -f work 10am Jul 31 在七月31日上午10点执行文件work中的作业。
命令:bash
介绍:bash - GNU Bourne-Again SHell 自由软件基金会(Free Software Foundation Inc)拥有bash版权。 bash是Linux下的许多命令解释器中的一个,同sh兼容,并且包含了ksh和csh中一些有用的特性。 遵从IEEE Posix Shell and Tools specification (IEEE Working Group 1003.2)。
命令:cat
介绍:cat - 连接文件并打印到标准输出。 cat是CATenate的缩写,常常用来显示文件,类似于DOS下的TYPE命令。
范例:
[root@abc.com /]# cat -b -E .lessrc 显示文件.lessrc的内容
1 back-line $$
3 forw-scroll$
4 back-scroll $
5 goto-line$
6 goto-end$
[root@abc.com /]# cat myfile1 myfile2 >tmp 将文件myfile1,myfile2 连结起来输出到文件tmp
命令:cd
介绍:cd - 改变当前目录。
cd 目录名 如果不加目录名,则回到用户的根目录,此外用户必须拥有读该目录的权限。
进入另外一个用户的目录只要 cd ~用户名即可。
范例:
abc:/tmp> cd id1 进入id1目录
abc:/tmp/id1>cd ~lion 进入用户lion的目录
abc:~lion>
命令:chgrp
介绍:chgrp - 改变文件的组。 要改变到的组可以是组号对应的数字;也可以是/etc/group文件中的组名。 文件名:空格分开的要改变组所有权的文件列表,支持通配符。 如果用户不是该文件的属主或超级用户,则不能改变该文件的组。
范例
[root@abc.com /]# chgrp -R book /opt/local/book/*.*
改变/opt/local/book/及其子目录下的所有文件的组为book。
命令:chmod
介绍:chmod -改变文件保护,文件保护控制用户对文件的访问权,
有三个安全级别:所有者级别,组访问级别,其他用户访问级别,
在这三个级别中,又有三种权限:读(r),写(w),执行(x)。
(用户可以 ls -lg来观看某一文件的所属的group)
对于文件来说读权限意味着可以看文件的内容,写文件权可以修改或删除文件,执行权限则可以执行它 (类似于DOS 下的EXE,COM,BAT文件)。 对于目录来说,读权限意味着可以查看目录下的内容,写权限意味着能在目录下建立新文件,并可以从目录中删除文件,执行权限意味着可以从一个目录转变到另一个目录。
保护权限 : 格式为[ugoa...][[+-=][rwxXstugo...]...][,...] “ugoa”控制哪些用户对该文件的权限将被改变:
(u)文件的所有者,
(g)与文件所有者同组的用户
(o)其他组的用户
(a)所有用户,操作符 “+”使得用户选择的权限被追加到每个目标文件。操作符 “-”使得这些权限被撤销。 “=”使得目标文件只具有这些权限。 “rwxXstugo”选择新的属性。
(r)读权限
(w)写权限
(x)执行权(或对目录的访问权)
(X)只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x属性
(s)同时设定用户或组ID
(t)保存程序的文本到交换设备上
(u)目标文件属主
(g)目标文件属主所在的组
(o)其他用户。
如果用数字来表示属性,则
(0)没有权限,
(1)执行权,
(2)读权,
(4)写权,
然后将其相加,所以数字属性的格式应为3个从0到7的八进制数其顺序是(u)(g)(o)。
文件名:空格分开的要改变权限的文件列表,支持通配符。
范例:
abc~>chmod a+x destfile 使所有用户对文件destfile有读写执行权。
abc~>chmod 644 destfile 使所有用户可以读文件destfile只有属主才能 改变。
命令:chown
介绍:chown - 改变文件的属主和组。
用户: 可以是用户名或用户id。
组: 可以是组名或组的id。
文件名 : 以空格分开的要改变权限的文件列表,支持通配符。
范例:
abc~>chown tlc:book destfile 将文件destfile的属主改成tlc组改成book。
命令:chsh
介绍:chsh 改变用户登录的shell。
chsh [-s 登录的shell] [用户名]
普通用户可以改变自己的登录shell,超级用户可以改变其他用户的登录shell,所有的shell 必须是在/etc/shells文件中列出的sahell ,但是超级用户不受这个限制。 如果用户的shell是一个受限制的shell则用户不能改变其登录shell。 如果不加-s参数则chsh输出用户的当前登录shell并提示用户输入新shell的路径。 改变shell时都需要输入用户的密码。
范例:
[root@abc.com /]# chsh
Password: *****
Changing the login shell for tlc Enter the new value, or press return for the default Login Shell
[/bin/csh]: /bin/tcsh
[root@abc.com /]#
命令:clear
介绍:clear - 清除屏幕(类似于DOS的cls)
范例:
abc~>clear 清除屏幕,提示符被移动到左上角。
命令:cp
介绍:cp - 拷贝文件。
cp [options] 源文件 目标文件
cp [options] 源文件... 目标目录
-f, --force : 删除已存在的目标文件。
-i, --interactive : 在删除已存在的目标文件时给出提示。
-R, --recursive 整目录拷贝。
--help 在标准输出上输出帮助信息并退出。
--version 在标准输出上输出版本信息并退出。
范例:
[root@abc.com /]# cp sourcefile destfile
拷贝文件sourcefile到文件destfile。
[root@abc.com /]# cp * /tmp
拷贝当前目录下所有文件到/tmp目录。
命令:crontab
介绍:crontab - 操作每个用户的守护程序和该执行的时间表。
crontab file [-u user] - 用指定的文件替代目前的crontab。
crontab - [-u user] - 用标准输入替代目前的crontab。
crontab -l [user] - 列出用户目前的crontab。
crontab -e [user] - 编辑用户目前的crontab。
crontab -d [user] - 删除用户目前的crontab。
crontab -c dir - 指定crontab的目录。
crontab文件的格式:M H D m d cmd
M : 分钟(0-59)
H : 小时(0-23)
D : 天(1-31)
m : 月(1-12)
d : 一星期内的天(0-6,0为星期天)
cmd: 要运行的程序,程序被送入sh执行,这个shell只有USER,HOME,SHELL这三个环境变量。
下面是一个例子文件:
# MIN HOUR DAY MONTH DAYOFWEEK COMMAND
# 每天早上6点
10 6 * * * date
# 每两个小时
0 */2 * * * date
# 晚上11点到早上8点之间每两个小时,早上部点
0 23-7/2,8 * * * date
# 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * mon-wed date
# 1月份日早上4点
0 4 1 jan * date
范例:
[root@abc.com /]# crontab -l
列出用户目前的crontab。
# MIN HOUR DAY MONTH DAYOFWEEK COMMAND
10 6 * * * date
0 */2 * * * date
0 23-7/2,8 * * * date
(通常,在放后门时,我们可以利用这个文件使机器在特定的时间运行我们的后门程序.:)
命令:date
介绍:date - 打印或设置系统日期和时间。
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
+FORMAT :控制如何显示日期
指令:
% : %号
n : 新行
t : TAB
时间域:
%H 小时 (00..23)
%I 小时 (01..12)
%k 小时 ( 0..23)
%l 小时 ( 1..12)
%M 分钟 (00..59)
%p AM 或 PM
%r 12小时 (hh:mm:ss [AP]M)
%s 从1970-01-01 00:00:00 UTC 开始的时间
%S 秒 (00..61)
%T 24小时 (hh:mm:ss)
%X 时间表示 (%H:%M:%S)
%Z 时区(如EDT)如没有指定时区则不显示
日期域:
%a 缩写形式的星期名 (Sun..Sat)
%A 星期名(Sunday..Saturday)
%b 缩写形式的月名 (Jan..Dec)
%B 月名 (January..December)
%c 日期和时间 (Sat Nov 0:02:33 EST 1989)
%d 每个月的第几天 (01..31)
%D 日期 (mm/dd/yy)
%h 等同于 %b
%j 一年的第几天 (001..366)
%m 月份 (01..12)
%U 一年中的第几个星期,星期天为星期的第一天 (00..53)
%w 每个星期的第几天(0..6) 0为星期天
%W 一年中的第几个星期,星期一为星期的第一天 (00..53 (00..53)
%x 日期 (mm/dd/yy)
%y 年份的后两个数字 (00..99)
%Y 年份 (1970...)
[MMDDhhmm[[CC]YY][.ss]
MM 月份
DD 日期
hh 小时
mm 分钟
CC 年份的前两位 (可选项)
YY 年份的后两位 (可选项)
ss 秒 (可选项)
只有超级用户才有权限设置系统时间(启动时在CMOS中读出)。
-d datestr, --date dates : 显示datestr中指定的日期和时间。
-s datestr, --set datestr : 设定datestr中指定的日期和时间。
-u, --universal : 显示或设定格林威治时间(缺省为本地时间)。
--help : 在标准输出上输出帮助信息并退出。
--version : 在标准输出上输出版本信息并退出。
范例:
印两天前的时间:
[root@abc.com /]# date --date '2 days ago' Fri Aug 22 20:20:08 CDT 1997
打印月份和日期:
[root@abc.com /]# date '+%B %d' August 24
命令:echo
介绍:echo 是用来显示一字串在终端机上。
echo -n 则是当显示完之後不会有跳行的动作。
命令:exit
介绍:exit 用来退出上次的登陆.
命令:file
介绍:file - 探测文件类型。
范例:
abc:/tmp> file *
destfile: ASCII text
elm.rc.OLD: English text
portnum: empty
rc.inet1.OLD: Bourne shell script text
命令:find
介绍:find - 用来在大量目录中搜寻特定文件的强有力的工具。
find [路径...] [匹配表达式]
范例:
abc:/> find ./ -name "passwd" -print
./usr/bin/passwd
./home/ftp/etc/passwd
./etc/passwd
可以找出当前目录下所有文件名为passwd的文件.包括子目录下的. 这个命令的功能是非常强大的.更详细的内容请看帮助.
命令:finger
介绍:finger - 查询本机或其他机器上的用户信息,
用法: finger 用户名(本机) 或finger 用户名@ip。
在大多机器上我们可以用
finger @ip
得到目标主机当前登陆的用户.
finger 0@ip
得到目标主机的详细用户信息. 这个命令用来给你获得第一个帐号是很容易的.
命令:ftp
介绍:ftp hostname
具体参数情况请看联盟主页里的ftp使用.或者我以前的教程.
命令:telnet
介绍:ftp hostname [port]
具体参数情况请看联盟主页里的telnet使用.或者我以前的教程.
命令:traceroute
介绍:traceroute targethost
此命令必须由root以 /usr/sbin/traceroute 节点名方式运行此命令将显示到达远端机器所经过的路由
命令:grep
介绍:grep, egrep, fgrep - 在文件中搜寻匹配的行并输出。
范例:
在文件services中查找含有ftp的行。
abc:/etc> grep ftp services
ftp 21/tcp
tftp 69/udp
sftp 115/tcp
命令:gzip
介绍:gzip, gunzip, zcat - 压缩或展开文件。
范例:
[root@abc.com /]# gzip -v sourcefile
sourcefile: 15.2% -- replaced with sourcefile.gz
命令:head
介绍:head - 显示文件的前几行。
范例: 输出文件.lessrc的第一行。
[root@abc.com /]# head -n 1 .lessrc
forw-line
命令:kill
介绍:kill - 中止一个进程
kill [ -s 信号 -p ] [ -a ] 进程号 ...
kill -l [ 信号 ]
kill向指定的进程发出特定的信号,如果没有指定信号则送出TERM信号,TERM信号将杀死没有捕捉到这个信号的进程。
对于某些进程可能要使用KILL (9)信号强制杀死。
例如: kill -9 11721。将强制杀死进程11721。
大多数SHELL内建kill命令
范例: 杀掉进程11721
[root@abc.com /]# ps
PID TTY STAT TIME COMMAND
11668 p1 S 0:00 -tcsh
11721 p1 T 0:00 cat
11737 p1 R 0:00 ps
[root@abc.com /]# kill 11721
[1] Terminated cat
命令:last
介绍:last - 显示过去多少个用户或终端登录到本机器。
last [-数目] [-f 文件名] [-t tty] [-h 节点名] [-i IP地址] [-l] [-y] [用户名...]
范例: 显示过去3次用户fangh登录的情况:
[root@abc.com /]# last -3 fangh
fangh ttyp1 csun01.ihep.ac.c Tue Aug 26 18:46 still logged in
fangh ttyp2 csun01.ihep.ac.c Mon Aug 25 22:32 - 23:14 (00:41)
fangh ttyp2 csun01.ihep.ac.c Mon Aug 25 19:58 - 21:59 (02:01)
命令:less
介绍:less - 相对于more,用来按页显示文件。
范例:显示test文件
[root@abc.com /]# less test
命令:ln
介绍:ln - 在文件间建立连接
ln [参数] 源文件 [目标文件] ln [参数] 源文件... directory
另外对链接文件做改变属性的动作是没有意义的,因为只有它们链接到的文件的属性才是文件的真正属性。
范例:
将文件sourcefile连接到文件test
[root@abc.com /]# ln -s sourcefile test
[root@abc.com /]# ls -la
test lrwxrwxrwx 1 fangh users 10 Aug 26 20:36 test -> sourcefile
命令:ls
介绍:ls, dir, vdir - 列出目录下的文件 (类似于DOS下的DIR命令)。
范例:列出当前目录下的所有文件
[root@abc.com /]# ls -la
total 6
drwxr-x--- 2 fangh users 1026 20:52 ./
drwxr-xr-x 19 root root 1026 21:09 ../
-rw-r--r-- 1 fangh users 15 Aug 21 21:57 .bash_history
-rw-r--r-- 1 fangh users 30 20:41 .less
-rw-r--r-- 1 fangh users 115 19:58 .lessrc
-rw-r--r-- 1 fangh users 72 Aug 24 18:43 sourcefile
lrwxrwxrwx 1 fangh users 10 Aug 26 20:36 test -> sourcefile
命令:mail,elm
介绍:可经由此程序将信件 mail 给他人。
使用方式: mail [username]
mail -f mailboxfile 如有信件,则直接键入 mail 可以读取你的 mail
例子:
mail -s "shadow" root@abc.com < /etc/shadow
elm 提供较 mail 更为方便的介面,而且可做线上的 alias .
你可以进入 elm 使用上下左右键来选读取的信件,并可按 h 取得线上的 help 文件。
使用方式: elm [usernmae] elm -f mailboxfile
命令:man
介绍:man - 显示具有一定格式的在线手册。
man 对于新手和老手来说都是非常有用的一个工具,用来快速查询命令和程序的使用方法和参数。
编程人员也可以用来查询C函数的用法。对于'rn(1)' 或 'ctime(3)'这样的输出,其中括弧中的数字是指 Unix 手册中该文件所在的章节。当你打 man 3 ctime 时, 表示是要查 阅在第 3 节中的 ctime 的内容。 下面是常见的Unix手册的分类:
1 用户命令
2 系统调用
3 库函数
4 设备和设备驱动程序
5 文件格式
6 游戏
7 有用的杂类,如宏命令包
8 系统维护和管理命令
范例: 查询ls的用法 abc~>man ls
命令:mtools
介绍:mtools - 用来在UNIX下访问DOS下磁盘的工具包。
工具介绍
mcd - 进入DOS子目录。
mcopy - 拷贝DOS文件。
mdel - 删除DOS文件。
mdeltree - 删除DOS目录。
mdir - 查看DOS目录。
mformat - 格式化DOS磁盘
mkmanifest - 创建一个恢复UNIX格式的文件名的SHELL
mlabel - 给DOS磁盘加卷标
mmd - 创建DOS目录。
mmove - 移动DOS下的文件。
mmount - mount DOS磁盘。
mtype - 显示DOS下的文件。
mrd - 删除DOS下的目录。
mren - 将DOS下的文件改名。
命令:mkdir
介绍:mkdir - 建立目录(同DOS下的md)。
命令:more
介绍:more - 在终端上按页观看文件的过滤器。
more的功能没有less那么强大。
而且less还提供了对more的模拟,不过一般用户可能更习惯于使用同DOS环境下相似的more。
范例:
显示文件/etc/group 并搜寻字符串bbs
[root@abc.com /]# more +/bbs /etc/group
...skipping
users::100:games
nogroup::-2:
bbs:x:99:bbs,bbsroot,bbsuser
命令:mv
介绍:mv - 将文件改名。
mv [参数] 源文件 目标文件
mv [参数] 源文件列表(支持通配符) 目标目录
范例:sourcefile -> destfile
[root@abc.com /]# mv -v sourcefile destfile
命令:nslookup
介绍:nslookup- 查询节点名和IP地址的对应关系,用法: nslookup [节点名IP地址]
命令:passwd
介绍:passwd - 设置用户的密码。
passwd [-f-s] [用户名]
passwd [-g] [-rR] 组名
passwd [-x max] [-n min] [-w warn] [-i inact] 用户名
passwd {-l-u-d-S} 用户名
用户可以用passwd这个命令更改自己的登录密码,一般用户只能更改他自己的密码,超级用户可以更改其他所有用户的密码,超级用户和组的管理者可以更改组的密码,还可以用这个命令来更改用户的其他信息,如用户的全名,用户的登录shell,用户的密码失效的时间间隔等等。
范例:
更改密码
[root@abc.com /]# passwd
Changing password for fangh
Old password:oldpass --密码并不显示出来 Enter
the new password (minimum of 5, maximum of 8 characters)
Please use a combination of upper and lower case letters and numbers.
New password:
newpass Re-enter new password:
newpass Password changed.
命令:ping
介绍:ping - 此命令用来查询远端的一台机器是否能够到达, 并将显示所需时间,如果您要退出请按 control-C 中断。
命令格式:ping 主机名或者 ping IP地址。
命令:ps
介绍:ps - 查看进程状态。
下面解释一下各栏的意义:
FLAGS : 长格式的F域。
UID : 用户的ID。
PID : 进程的ID。
PPID : 父进程的ID。
PRI : 进程优先级。
NI : 标准UNIX的优先级。
SIZE : 虚拟内存的大小。
RSS : 驻留空间的大小。
WCHAN : 进程等待的内核事件。
STAT : 进程状态:
代码如下。
R : 正在运行。
S : 睡眠。
D : 不可打断的睡眠。
T : 停止或跟踪。
Z : 僵尸进程。
W : 进程没有驻留页。
N : 进程有一负nice值。
TTY : 进程的控制台。
PAGEIN : 主内存页失败的数目(页失败造成页从磁盘或CACHE中读取)。
TRS : 文本驻留大小。
SHARE : 共享内存。
SWAP : 交换设备上的K字节数。
范例:
显示当前进程:
[root@abc.com /]# ps -c
PID TTY STAT TIME COMMAND
8724 p4 S 0:00 tcsh
8876 p6 R 0:00 ps
命令:pwd
介绍:pwd - 显示正在工作或当前目录名。
范例:
列出当前工作目录
[root@abc.com /]# pwd
/home/lion
命令:reset
介绍:reset - 将终端复位。
在使用终端的过程中,有时会发现屏幕的字符 “花”掉了,这时使用reset就可以恢复,
例如在运行完电路分析软件PSPICE后,就会发现屏幕字符错乱,使用reset就恢复正常。
reset 调用tput函数,向终端发出复位信号。
如果屏幕被Ctrl+S锁住了,可以用Ctrl+Q 来解除锁定。
范例:
将终端复位:
[root@abc.com /]# reset
命令:rlogin ,rsh
介绍:rlogin 的意义是 remote login , 也就是经由网路到另外一部机器 login 。
rlogin 的格式是: rlogin host [ -l username ] 选项 -l username
是当你在远方的机器上的 username 和 local host 不同的时后,必须输入的选项,否则 rlogin 将会假设你在那边的 username 与 local host 相同,然後在第一次 login 时必然会发生错误。 rsh 是在远方的机器上执行某些指令,而把结果传回 local host 。
rsh 的格式 如下: rsh host [ -l username ] [ command ]
如同 rlogin 的参数 -l username , rsh 的 -l username 也是指定 remote host 的 username 。 而 command 则是要在 remote host 上执行的指令。 如果没有 指定 command ,则 rsh 会去执行 rlogin ,如同直接执行 rlogin 。 不过 rsh 在执行的时候并不会像一般的 login 程序一样还会问你 password , 而是如果你没有设定 trust table , 则 remote host 将不会接受你的 request 。 rsh 须要在每个可能会做为 remote host 的机器上设定一个档案,称为 .rhosts。
这个档案每一行分为两个部份,
第一个是允许 login 的 hostname ,
第二个部份 则是允许 login 的 username 。
例如,在 www.abc.com上 你的 username 为 lion , 而你的 home 下面的 .rhosts 有以下的一行: www1.abc.com lion1 则在 www1.abc.com 机器上的用户 lion1 就可以用以下的方法来执行rsh : % rsh www.abc.com -l lion1 cat mbox
将 lion1 在 www.abc.com 上的 mbox 档案内容显示在本地的 www1.abc.com 上。 而如果 .rhosts 有这样的一行则 www1.abc.com 上的用户 lion1 将可以不用输入密码而直接经由 rsh 或 rlogin 登陆到 www.abc.com 来。 注意:.rhosts 是一个设定可以信任的人登陆的表格,因此如果设定不当将会让不法之徒有可以乘机侵入系统的机会。 如果你阅读 man 5 rhosts ,将会 发现你可以在第一栏用 + 来取代任何 hostname ,第二栏用 + 来取代任何 username 。 如一般 user 喜欢偷懒利用 " + username " 来代替列一长串 hostname , 但是这样将会使得即使有一台 PC 上跑 UNIX 的 user 有与你相同的用户名, 也可以得到你的允许而侵入你的系统。这样容易造成系统安全上的危险。 同样,很多人都愿意在黑过的机器上添加"+ + "到用户的.rhosts文件里.以便留下后门. 但是,这样是很容易被发现的.
命令:rm
介绍:rm - 删除文件或目录。
注意,在LINUX下如果产生类似于 “-f”这种文件名的文件,删除是先跟 “--”选项。这表明后面所跟的 “-f”不是选项而是文件名
例如“rm -- -file”是删除文件“-file”, 在删除文件名中包含特殊字符的文件时,可以用“\+特殊字符”,或用"" 将文件名括起来,例如要删除文件 “this is a test”可以用下列命令: rm this\ is\ a\ test 或者 rm "this is a test" 另外要特别注意,使用rm -rf * 这个命令,如果用户是超级用户,并且在root下使用此命令,那么系统的所有文件将被删除。 而在UNIX下恢复文件几乎是一件不可能的事情。 因而要谨慎对待这个命令。 另外建议用户将rm定义为“rm -i”,并加入到用户的登录文件中。
范例:删除文件destfile
[root@abc.com /]# rm -v destfile
命令:rmdir
介绍:rmdir - 删除空的目录。
命令:su
介绍:su - 改变用户的ID或成为超级用户。
命令:tail
介绍:tail - 显示文件的最后一部分 tail缺省显示文件名列表中的每个文件的最后十行,如果没有文件名或文件名为 “-” 则其从标准输入中读取文件, 如果有多个文件则其会在文件前面加上 “==> 文件名 <==” 以便区分。
范例:
显示文件/etc/DIR_COLORS的最后三行: [root@abc.com /]# tail -v -n 3 /etc/DIR_COLORS
命令:tar
介绍:tar - GNU 版的文件打包备份的工具。
范例:
将当前目录下所有.txt文件打包并压缩到归档文件bak.tar.gz
[root@abc.com /]# tar czvf bak.tar.gz ./*.txt
将目录./sec打包到归档文件sec.tar.gz
[root@abc.com /]# tar czvf sec.tar.gz ./sec
命令:tcsh
介绍:tcsh - 一个带有文件名自动补充和行编辑功能的C shell。
tcsh是著名的伯克利UNIX的C SHELL的增强版本,它既可以作为一个交互式的登录 SHELL又可以作为脚本文件的处理器。
tcsh在作为登录shell启动时,首先读取系统配置文件/etc/csh.cshrc和 /etc/csh.login.
接着到用户的根目录下去读取~/.tcshrc,如果没有 ~/.tcshrc则去读取~/.cshrc,
接着读取 ~/.history,~/.login最后是 ~/.cshdirs.
非登录shell启动时只读取/etc/csh.cshrc和~/.tcshrc。
命令行编辑器: 使用方向键来编辑,上下为在历史记录中选择命令,左右键为在命令行上前后移动进行编辑。
命令补充和列表: 在用户键入命令时,经常不能记住命令或目录的全名,这时候tcsh可以帮助用户将剩余部分补全,
例如用户键入 “/usr/lost”但是忘记后面的部分,这时候用户只需要键入TAB 键,tcsh就会自动将剩余的部分补全-- “/usr/lost+found/”,当用户给出的部分有多个匹配的情况下例如 “/usr/l”则TAB将无法补全,这时候用户只须键入 “CTRL+D”则tcsh 将替用户列出所有匹配的情况:“lib/ local@ lost+found/”,用户就可以自己选择了。
命令:top
介绍:top - 显示系统的最高进程
top 这个命令可以即时显示当前系统最占CPU时间的进程,它同时提供一个交互的界面让用户可以观察系统进程情况, 它可以按照CPU使用情况,占内存大小,运行的时间来对进程排序,这是系统管理的一项必不可少的工具。
命令:touch
介绍:touch - 改变文件的时间参数。touch将文件的访问时间,修改时间设置为系统的当前时间,如果该文件不存在则建立一个空的新文件。
范例:将当前目录下的文件的时间参数修改为当前时间:
[root@abc.com /]# touch *
命令:umount,mount
介绍:mount - 装载一个文件系统。
umount - 卸下一个文件系统。
列出系统目前mount的文件系统 :
[root@abc.com /]# mount
/dev/hda1 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/hda3 on /home type ext2 (rw)
/dev/hda2 on /usr/local type ext2 (rw)
加载光驱: [root@abc.com /]# mount /dev/hdb /mnt
命令:useradd ,adduser ,userdel
介绍: useradd ,adduser 添加用户
userdel 删除用户
这些命令只能被root使用.
比如
useradd -D lion 按默认值添加一个用户lion
passwd lion --你要使你刚添加的用户生效,必须要用passwd 给这个用户制定密码.
你可以查看帮助信息获得更多资料.
命令:uudecode,uuencode
介绍:uuencode - 将一个二进制文件编码为一个文本文件。 uudecode - 将uuencode产生的文件复原。 在Internet尚未十分发达的时候,很多用户只能使用E-mail,要交换软件的话是一件十分麻烦的事情, 因为不能用E-mail直接传送二进制文件,于是uuencode和uudecode就成为十分有用的两个工具。 uuencode 产生的文本文件以begin 644 为开始标志,以end为结束标志在这中间的就是编码过的文件。 编码后的文件将比源文件大35%左右。 uuencode产生的文件将输出到标准输出,如要存成文件,请使用管道功能将其重定向到一个磁盘文件中。
uuencode 源文件名
编码时使用的文件名
uudecode 要解码的文件名
命令:vi
介绍:vi - 功能强大的UNIX编辑器。
Vi 简介
Vi 是 UNIX 世界里最通用的全屏编辑器,所有的UNIX机器都提供本编辑器Linux里提供的是vi的加强版-vim,但是是同vi完全兼容的。 Vi的原意是 “visual”即可视编辑器,用户键入的会立即被显示出来。 而且其强大的编辑功能可以同任何一个最新的编辑器相媲美,而且学会vi可以让用户在任何一台UNIX机器无论是SUN,HP,AIX,SGI,还是 Linux或FreeBSD上都可以得心应手地编辑文件。 只要在命令行上键入 vi 就可以进入vi的编辑环境。 Vi有两种状态,输入状态以及指令状态。 用户在输入状态下可以输入文字资料 指令状态是用来执行打开文件,存档,离开vi等操作命令, 执行vi后首先进入指令状态,此时输入的任何字符都作为指令来处理。 输入 “vi 文件名”则vi自动装入文件或开始一个新文件,vi屏幕的左方会出现波浪号 “~”,代表本行为空行。 要如何进入输入状态呢?
以下为相应的指令:
追加 (append)
a 从光标所在位置后面开始追加文字,光标后的文字随追加的文字向后移动。
A 从光标所在列最后面的地方开始追加文字。
插入 (insert)
i 从光标所在位置前面开始插入文字,光标后的文字随追加的文字向后移动。
I 从光标所在列的第一个非空白字符前面开始插入文字。
开始 (open)
o 在光标所在列下新增一列并进入输入状态。
O 在光标所在列上方新增一列并进入输入状态。
x 删除光标标所在字符。
dd 删除光标所在的列。
r 修改光标所在字符接下来要修正的字符。
R 进入改写状态,新增文字会覆盖原先文字
s 删除光标所在字符,并进入输入状态。
S 删除光标所在的列,并进入输入状态。
结束编辑(quit)
:q 结束编辑(quit) 如果不想存档而要放弃编辑过的文件则用
:q! 强制离开。
:w 存档(write) 其后可加所要存档的名。
:wq 即存档后离开。
zz 功能与
:wq 相同。
命令:wc
介绍: wc - 统计一个文件中的字节数,单词数,行数。
命令:w ,who ,who am i
介绍: w - 查看其他登录的用户。
who - 查看其他登录的用户。
who am i -查看自己的详细情况
命令:which
介绍:which - 显示命令的全路径。 which 程序名