网络营销的优点是:说说常用的UNIX命令?

来源:百度文库 编辑:高考问答 时间:2024/04/29 16:14:28

下文列出了常用的unix命令。

more less:
less的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less允许使用者往回卷动以浏览已经看过的部份,同时因
为less并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。

unix种类[图]
>> Linux ‖ BSD ‖ Solaris ‖ SCO ‖ HP-UX ‖ AIX ‖ AS400 ‖ Tru64 ‖ IRIX ‖ MacOsX

UNIX命令
一、UNIX命令格式
1、UNIX命令提示符
在命令行下,操作系统会显示一提示符,提示用户在此提示符后可以输入一行命令。不同的Shell有不同的缺省提示符:
B Shell和K Shell的缺省提示符为"$";
C Shell的缺省提示符为"%";
但当以root用户登录时,系统提示符统一缺省为"#"。
用户可以更改自己的缺省Shell和提示符。

2、基本命令格式
在Shell提示符下,就可以输入UNIX命令。UNIX命令的基本格式如下:
command 参数1 参数2 ... 参数n
UNIX命令由一个命令(command)和零到多个参数构成,命令和参数之间,以及参数与参数之间用空格隔开。UNIX的命令格式和DOS的命令格式相似,但UNIX的命令区分大小写,且命令和参数之间必须隔开。如:对DOS来说是以下四条命令是相同的:

cd\tmp
cd \tmp
CD \tmp
cd \Tmp

对UNIX操作系统来说,改变目录的命令也是cd命令,以下是正确的UNIX cd命令:

cd /tmp
cd /Tmp

但tmp和Tmp是两个不同的目录。以下两条命令:

cd/tmp
CD /tmp

已经不是cd命令了。

3、在一行中运行多个命令
可以在一行中输入多个命令,命令间用“;”分开,如:
mkdir tmp ; cp file1 tmp/file2 ; ls -l tmp
UNIX会顺序执行以上三条命令。

4、在后台运行程序
要让程序在后台执行,只需在命令行的最后加上“&”符号。
[例1] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件。
执行命令和立即显示的内容如下:
$ find . -name abc -print&
10722
$
...
10722表示进程号(PID)。当find命令在后台执行完后,会显示结果。
当在后台运行命令时,最好将其输出重定向输出到一个文件中去,以便以后检查。
[例2] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件并将结果存到myfind文件中。
执行命令如下:
$ find . -name abc -print>;myfind&

在运行后台程序的同时可以继续输入命令。

5、nohup命令
当终端退出后,由该终端启动的后台程序自动退出。要想终端退出后程序不停止运行,则要用nohup命令启动后台程序。如对于例2的命令加入nohup后变为:
$ nohup find . -name abc -print>;myfind&
二、特殊按键
在UNIX命令操作中有一些特殊键,列表如下:

Ctrl + d 结束键盘输入或退出当前shell
Del 中断键,停止当前动作回到shell
Ctrl+s 暂停屏幕输出
Ctrl+q 继续屏幕输出
Ctrl+u kill键,删除光标所在行的所有字符
Esc 结束当前的操作状态(如vi)
三、UNIX常用简单命令
下表列出了几个简单的UNIX命令:

解释 UNIX命令 命令举例
查看帮助信息 man mandate
查看日期 date date
显示日历 cal cal1998
显示大写大字 bannerbanner “ABCD”
计算器 bc bc
修改口令 passwdpasswd
查看谁在使用系统 whowho
查看我是谁 who am iwho am i
显示用户信息 fingerfinger 用户名
清除屏幕 clearclear

1、man命令 - 查看帮助信息
举例:
查看man的使用方法: man
查看finger命令的帮助信息: man finger
2、date命令 - 显示、修改日期和时间
显示时间的命令如下:
date
显示如下:
Mon Aug 17 13:43:14 NST 1998
表示NST标准时间,1998年8月17日13:43:14,星期一。
3、cal命令 - 显示日历
举例:
显示1998年全年日历: cal 1998
显示1998年8月日历: cal 8 1998
4、banner命令 - 显示大写大字
举例:在屏幕上用大字显示“HUAWEI”,命令如下
banner "HUAWEI"
5、bc命令 - 简单计算器
bc命令可以进行加、减、乘、除、求模、乘方运算,运算符分别为“+”“-”“*”“/”“%”“^”。bc使用举例如下
bc
以后输入算式即可,如:
1234 * 3 + 2^4
按回车显示结果,以后等待输入其它算式。按<Ctrl>;+d键退出bc。
6、passwd命令 - 修改口令
要修改自己的口令,只需运行:
passwd
以后系统会提示输入原来口令,并输入新口令。
7、who命令 - 查看正在使用UNIX的用户
用法如下:
who
系统会显示正在使用UNIX的用户名、终端号和登录时间。要查看使用者自己的信息,运行:
who am i
8、finger命令 - 显示用户信息
finger命令比who命令显示的信息量大,功能强。基本使用方法如下:
显示登录信息: finger
显示smith用户详细信息: finger smith
9、clear命令 - 清除屏幕
clear

四、UNIX用户间简单通讯命令
UNIX提供许多方式让用户相互通信,它允许你以文本的方式发送及接收信息。你可以传递信息给其他用户、所有用户、或自己。信息来源可以是文本文件或直接由键盘输入的内容。

(一)write 命令
可使用write 实用程序向已登录的另一个用户发送一条报文,当对方也使用write 命令时,双方之间就建立了通信。
当用户使用write 命令时,就在对方用户终端上显示提示信息。write 命令的格式如下:

write destination-user [terminal]

其中,destination-user是你想与之通信的用户注册名,通常使用who 命令查看其注册名。如果对方在多台终端上登录,可通过用terminal 来控制write 的报文送向指定的终端。为了建立与其他用户的双向通话,用户和对方每次必须执行write 命令,且必须指定注册名。一般在使用UNIX 进行通话时,通信双方有一些约定:用“o” 表示结束一条报文,“oo” 表示结束这次通信,用ctrl-d 退出write 命令。

[例1] UNIX上两用户alex 和jenny 通过write命令通信。
在alex的所在终端上(<CR>;表示回车):
$ write alex <CR>;
Hi Alex, are you there? o<CR>;
Message from Alex (tty11)[Sat Jan 5 15]….
Yes Jenny, I’m here. o<CR>;
……
Thank you ,Alex, bye! oo<CR>;
Ctrl-d
$
该例说明了使用write 命令实现Alex 和Jenny 的通信过程。首先Jenny 使用前两行向Alex发送了一条报文,接下来的两行是Alex 发送的报文Jenny 收到了,省略号表示他们的通信继续。最后,Jenny 用thank you,Alex,bye!oo 告诉Alex没有话要说了,并在下一行开始键入ctrl-d 来退出write 并回到shell。

(二)使用talk双方对话
talk 命令是一个虚拟通信命令,它允许登录双方通过键盘实时对话,其格式如下:

talk user-name [terminal]〈CR〉

注意,使用talk 进行双方对话时,双方使用的机器体系结构必须相同。当对方给出响应的talk命令后,双方终端上都显示
[connect established]
时,双方可双工通信了。双方可以以任意的速度从键盘输入,talk 把你的输入一行一行的显示在你和对方的屏幕上。用<Delete>;退出talk 。

(三)使用mesg 拒绝和允许接收报文
mesg 命令允许或拒绝接收由其它终端发来的write 和talk通讯信息。mesg命令在本地终端运行,其使用格式如下:

mesg [y] [n]〈CR〉

其中,y 表示允许接收,n 表示拒绝接收。如既不给出y 也不给出n ,则报告现在的许可状态。例:
[例1] 显示状态:
$mesg <CR>;
则命令的执行结果为:
is y
或 is n
[例2] 拒绝接收由其它终端发来的write和talk通讯信息:
$mesg n
$mesg
is n

(四)wall 广播式消息传递
所有登录用户都可收到该消息。仅超级用户使用该命令。wall命令有以下几种格式:

# wall
# wall filename
# wall “send a messageto all the people。”
2.4 注销(退出UNIX系统)
在每次使用完后,一定要进行注销,以防他人通过你的帐号进入系统,并保证系统的完整性。注销过程如下:在UNIX提示符下,运行:

$ exit

$ logout
或直接按键:
Ctrl+d。
由于UNIX操作系统的不同,注销的命令也可能不同。

--------------------------------------------------------------------------------

3.5 UNIX文件存取权限
一、文件的存取权限
UNIX文件的存取有三种权限:

权限 普通文件的存取权限目录的存取权限
R 具有读取文件的权利能读取文件名称
W 具有写入文件的权利能建立和删除文件,可以改变文件名
X 具有执行文件的权利能使用该目录下的文件(如cd命令)搜索文件等

二、能够存取文件的用户类型
有三种类型的用户可以存取文件:

用户类型 说明
owner 文件的属主(拥有者)
group 用户组内成员
other 其他用户(非owner和非group)

每种类型的用户都有三种文件存取权限:r、w、x。

三、文件存取权限的显示
可以通过”ls -l”命令显示,如:

$ ls -l file1

显示如下:

-rwxr-xr-- 2 wjm newservice 321 Oct 1709:33 file1

上行中:
第2-4字符”rwx”表示此文件属主wjm对文件file1的权利为”可读、可写、可执行”;
第5-7字符”r-x” 表示此用户组newservice内的用户对文件file1的权利为:
”可读、不可写、可执行”;
第8-10字符”r--” 表示其他用户对文件file1的权利为”可读、不可写、不可执行”

四、文件存取权限的修改
用chmod命令修改文件的存取权限,chmod命令的格式如下:

格式1:chmod symbolic_mode file…
格式2:chmod absolute_mode file…

(一)格式1:符号模式(symbolic_mode), 符号模式的命令格式如下:

chmod [who] op permision file…

who项表示用户类型,它的内容为以下一项或多项:

U 文件属主(user --- owner)
G 用户组(group)
O 其他人(other)
A 所有人(all)

op项表示动作:

+ 表示要加上permission指定的权利
- 表示要取消permission指定的权利

permission项为存取权限,它的内容为以下一项或多项:

r 表示可读
w 表示可写
x 表示可执行

举例:

chmod u+w test report 属主对test和report文件“可写”
chmod u-x abc.c 属主对abc.c文件不可执行
chmod u+rwx myfile1 属主对myfile1“可读、可写、可执行”
chmod ugo+rwx myfile2 任何人都对myfile1“可读、可写、可执行”

(二)格式2:绝对模式(absolute_mode), 符号模式的命令格式如下:

chmod xyz file…

x、y、z分别是0-7的数字,分别表示属主、用户组、其他人对该文件的存取权限。x、y、z的取值公式均为:
a*4 + b*2 +c
其中,
a=1分别表示可读,a=0表示不可读;
b=1分别表示可写,b=0表示不可写;
c=1分别表示可执行,c=0表示不可执行;
举例:

chmod 751 ncp 属主对ncp拥有“可读、可写、可执行”的全部权利;组内成员对ncp只有“可读、可执行”的权利;其他用户对ncp只有“可执行”的权利。

五、改变文件属主及文件所在组
改变文件属主的格式如下:

chown 属主名 文件名

必须对文件具有write权利才可改变文件的属主。
改变文件所在组的格式如下:
chgrp 组名 文件名

必须是文件的属主或supervisor才能改变文件组别的归属。
举例:
chown wjm test1 将文件test1的属主改为wjm
chgrp newservice test1 将文件test1的用户组改为newservice
3.6 UNIX重定向与管道
UNIX重定向 将文件的标准输出重新定向输出到文件,或将数据文件作为另一程序的标准输入内容。重定向符号如下:
< 重定向输入
>; 重定向输出
>;>; 重定向输出并追加到尾部
例如:
ls -l >; file1 将ls -l命令显示的内容存到file1中,
ls >;>; file1 将ls 命令显示的内容附加存到file1的尾部
grep abc < file1 将file1的内容作为grep abc命令的输入

其中,">;"和">;>;"为输出重定向符,">;"将输出内容存到重定向文件中,若文件存在,则先删除原有内容;">;>;"将输出内容存到重定向文件的尾部。

UNIX管道 将一文件的输出作为另一文件的输入。管道符号如下:
| 将左边命令的输出,作为右边命令的输入
例如:
ls|more 将ls的输出作为more命令的输入
ps -ef|grep smith ps -ef的输出作为grep smith命令的输入
3.7 UNIX文件系统常用命令
UNIX命令 UNIX命令举例 类似DOS命令
显示当前目录 pwd pwdcd
改变目录 cd cd/usr cd c:\usr
进入家目录 cd cd
创建目录 mkdirmkdir abc md abc
删除空目录 rmdirrmdir abc rd abc
删除目录及其内容 rm -rrm -r abc deltree abc
显示目录内容 ls lsabcls -l abc(文件长列表)ls -aabc(所有类型文件)ls -d *(不进子目录) dir abc
显示文本文件内容 catcat file1.c type file1.c
一次一屏显示文本文件内容more more file1.c
拷贝文件 cp cpfile1 file2 copy file1 file2
移动(重命名)文件 mv mv call.test call.listmove call.tst call.lstren call.test bbb
删除文件 rm rmcall.list delcall.lst

一、pwd命令
pwd命令用来显示当前目录路径,命令如下:
pwd
二、cd命令
cd命令用于改变当前的目录,如:
命令举例 说明
cd /usr/smith 改变到/usr/smith目录
cd ../wjm 改变到父目录下的wjm子目录
cd exam1 改变到当前目录下的exam1子目录
cd 改变到家目录
不带参数的cd命令表示进入家目录,这点与DOS有本质区别。
三、rm命令
rm命令可以删除文件及目录,举例如下:
命令举例 说明
rm file2 删除当前目录下的文件file2
rm file* 删除当前目录下以file开头的文件
rm -r /usr/wjm/exam2 删除目录/usr/wjm/exam2及其内容
四、ls命令
ls命令可以显示目录内容,命令格式如下:
ls -选项 文件名
其中的常用选项说明如下:
-l 长列表显示目录内容
-a 显示所有类型文件,包括隐含文件
-d 如果显示内容包含目录名,则只显示目录名字不显示目录内容
命令举例如下:
命令举例 说明
ls 显示当前目录内容
ls file* 显示除当前目录下以file开头的文件
ls -l /usr/wjm/exam2 长列表显示目录/usr/wjm/exam2内容
ls -adl 显示当前目录内容(同时带-l、-d、-a参数)

[注] ”ls -l”命令显示格式如下:
drwxrwxr-x 2 smith group 48 Jan 05 1998 john
-rwxr-xr-- 1 wjm newservice 321 Oct 17 09:33 file2
上面每行中:
第一列:
第1个字符表示文件的类型(d表示目录,-表示普通文件);
第2-4字符表示文件属主对此文件的访问权限(如:“rwx”和“rwx”);
第5-7字符表示用户组对此文件的访问权限(如:“rwx”和“r-x”);
第8-10字符表示其他用户对此文件的访问权限(如:“r-x”和“r--”);
其中,访问权限用三个字符表示,顺序是“rwx”,“r”表示可读、“w”表示
可写、“x”表示可执行。若某项禁止访问则为“-”,如:“r-x”表示可读、
不可写、可执行;
第二列:此文件的链接数(如:2和1);
第三列:此文件的属主名(如:smith和wjm);
第四列:用户组名(如:group和newservice);
第五列:文件所占字节数(如:48和321);
第六至八列:最后修改的日期和时间(如:“Jan 05 1998”和“Oct 17 09:33”);
第九列:文件名(如:john和file2)。

五、mkdir、rmdir、cat、more、cp、mv命令
这些命令和DOS的相应命令功能和用法基本一致,它们和DOS命令的对应关系如下:
UNIX命令 DOS命令
mkdir mkdir或md
rmdir rmdir或rd
cat type
more more
cp copy
mv move或ren

本文来自CSDN博客:http://blog.csdn.net/chinayuan/archive/2008/10/14/3072562.aspx

UNIX系统常用命令
UNIX系统常用命令格式:
command [flags] [argument1] [argument2] ...
其中flags以-开始,多个flags可用一个-连起来,如ls -l -a 与ls -la相同。

根据命令的不同,参数分为可选的或必须的;所有的命令从标准输入接受输入,输出
结果显示在标准输出,而错误信息则显示在标准错误输出设备。可使用重定向功能对
这些设备进行重定向。

命令在正常执行结果后返回一个0值,如果命令出错可未完全完成,则返回一个
非零值(在shell中可用变量$?查看). 在shell script中可用此返回值作为控制逻辑
的一部分。

注:不同的UNIX版本的flags可能有所不同。

1、与用户相关的命令
1.1 login
(在LINUX Redhat下此命令功能与Solaris/BSD不同,执行login会退出当前任务).

login:
Password:

相关文件:
在下面的这些文件中设定shell运行时必要的路径,终端类型,其他变量或特殊程序.

$HOME/.profile (Bourne shell, sh, bash)
$HOME/.cshrc (csh, tcsh)
$HOME/.tcshrc (tcsh)
/etc/passwd文件中列出每个用户的shell
/etc/csh.cshrc
/etc/csh.login
/etc/profile (Bourne shell, bash)
/etc/login (Bourne shell, bash)

csh: /etc/csh.cshrc和$HOME/.cshrc每次执行都会读取,
而/etc/csh.login和$HOME/.login只有注册shell才执行
修改相应文件后使用 source .cshrc使能相关修改,如果修改了path则
还需使用rehash刷新可执行文件hash表。

tcsh: $HOME/.tcshrc, 没有些文件读取.cshrc

sh: /etc/profile和$HOME/.profile注册shell
bash: /etc/profile和$HOME/.bash_profile注册shell读取
.bashrc交互式非注册shell才读取。

在sh/bash下手工执行相关文件:
. /etc/profile

相关文件执行顺序
sh: /etc/profile -> $HOME/.profile
csh/tcsh: /etc/csh.cshrc -> /etc/csh.login -> $HOME/.cshrc
-> $HOME/.login

变量的设置:
sh/bash: TERM=vt100; export TERM
OR: export TERM=vt100 (bash)
csh: setenv TERM vt100

常用变量:
(1)Backspace $HOME/.profile $HOME/.cshrc
stty erase ^H
(2)umask 新建文件或目录的保护属性
(3)TERM
(4)切忌PATH中加入 .

1.2. rlogin
与telnet类似,连接到远程主机.

rlogin remotehost [ -l loginname ]
Or:
rsh [-l loginname] remotehost [command ]

相关文件:
远程主机的 /etc/hosts.equiv 和 $HOME/.rhosts

相关网络配置文件:
/etc/inetd.conf文件中的r系统服务.Redhat下为shell, login, exec, 对应
的网络守护进程(daemon)为in.rshd, in.rlogind, in.rexecd.

建议: 从安全角度出发,关闭r系列服务.

1.3. telnet
telnet remotehost [port]

相关文件:
/etc/inetd.conf文件中的telnet服务.
/etc/issue.net

TIPS: strings /usr/sbin/in.telnetd |egrep issue

1.4. passwd 更改口令

1.5 exit 退出当前shell

2. 命令或文件的查找
相关shell变量:
csh/tcsh: $path
.cshrc set path=(/usr/bin /usr/local/bin $path)
sh/bash: $PATH
.profile .bash_profile
PATH=/usr/local/bin:$PATH; export PATH

2.1 which
Syntax: which command

which为bash/tcsh内带命令
[hbwork@toshiba]$ which which
which: shell built-in command.
2.2 where(tcsh)
Syntax: where command
2.3 locate (LINUX)
Syntax: locate filename

相关命令: updatedb更改locate文件名数据库

3. 查看命令的用法
man
相关文件:
/etc/man.config

4. 管理员常用命令

4.1 install
用于安装一个新的命令或daemon等. 一般情况下可以不用,但很多软件在其安装
shell script中使用install将目标文件复制到相应的目录并设置正确的属性等.

NAME
install - copy files and set their attributes

SYNOPSIS
install [options] [-s] [--strip] source dest
install [options] [-s] [--strip] source... directory
install [options] [-d,--directory] directory...
Options:
[-c] [-g group] [-m mode] [-o owner] [--group=group]
[--mode=mode] [--owner=owner] [--help] [--version]

4.2 shutdown
不同的unix参数不尽相同,在linux下常用如下方式关机:
shutdown -h now
shutdown -r now (等同于reboot)

4.3 halt
poweroff
关机,在多用户方式下(Runlevel 3)不建议使用,

4.4 ulimit
korn shell和bourne shell中可用此命令,在csh系列中相应的命令为limit.
用于限制每个进程可使用的系统资源,通常分两种限制:
. Hard limits 系统所定义的资源,只有root能更改
. 软限制 对新建进程所使用的限制,可增加到系统的Hard Limit.

Flags:
-a 列出软限制
-Ha 列出Hard Limit
-c size 设置coredump size的块大小
-t size cputime
-f size file size

4.5 umask 系统管理员用于设置用户默认的umask值.

5.与进程相关的命令

进程基本概念: 进程与命令的执行相关,但并不是一一对应; 一条命令可能对应若干
个进程(如shell script, pipe等).但最简单的命令与umask只有一个进程.

进程分类:
.交互式进程:可以前台或后台执行,前后台可切换
.批处理进程:不通过终端提交,一般将它们放在任务队列中顺序执行. 如通过
at 和 crontab提交的任务.
.deamon:永不终止的进程,等待响应来自其他进程的服务请求.如sendmail,
named(DNS), POP3及apache等.

进程的相关属性:
PID
Real UID
Effective UID (SUID)
Real GID
Effective GID (SGID)
Priority(Nice Number)执行的优先级

5.1 ps
Process Status, 列出当前运行的进程状态,根据选项不同,可列出所有的或部分进程
. 无选项时只列出从当前终端上启动的进程(SYSV)或当前用户($USER)的进程(BSD),
不同的UNIX版本之间有差别. linux使用BSD版本的ps
. BSD版本ps命令使用方法:
ps
ps aux 列出系统中所有的进程的详细情况
ps aux |egrep inetd

输出信息内容:
PID
Terminal 如无相应终端则为-
cpu time
UserID or Username
进程启动时间或日期
进程状态(Stat: S(leep) R(unnable) D(uninterrupt sleep) Z(ombie)
W 进程没有驻留页面, N: 进程的nice值为负值

5.2 kill
kill [-signal] PID

kill -l 列出可用信号量
常用信息量:
-HUP (1) 重启进程
ps ax |egrep inetd
kill -HUP pid_of_inetd
-KILL (9) 强制中止

PID取值含义:
>0 指特定进程(实际进程)
=0 同组用户的所有process(PGID)
=-1 Effective UID = 执行命令用户之uid
<0 && !=1 取绝对值之进程

5.3 nice
用于改变一个或多个进程的优先级; 但只有root或提高进程的优先级, 普通用户只能
降低进程的优先级.
nice用负数表示提高优先级,而正数表明降低优先级,通常此值范围是-20~20.

如未指定提高优先级,nice会降低或不改变进程的优先级. 当然如果没有权限的话
进程的优先级不会有任何改变.

一般情况下我们用nice来降低后台进程的优先级(默认优先级为10).

nice find . -name "*.c" -print &
nice 16 find . -name "*.c" -print &

5.4 wait
wait PID

等待作业结束,参数为pid,在shell script中有时用到.

5.5 nohup
nohup command &

5.6 sleep

sleep seconds

进程前后台切换: Ctrl-Z, fg, bg

6. 通讯

6.1 ftp
6.2 mailx
6.3 minicom (串口终端,MODEM)

7. 文件比较
cmp
comm
diff (用于比较文本文件)
diff3 (比较3个文件)
sdiff

8. 文件操作
touch 创建文件,修改文件日期等
chmod
chwon
chgrp
rm 慎用 rm -rf
mv 移动文件或改名
cp cp -r 复制目录
cat
rcp 远程复制
ln 默认情况下为硬连接,每个文件具有相同的inode
ln -s sourcefile targetfile

9. 目录操作
mkdir [-p] [-m mode] directory
rmdir [-p] directory

10. 文件信息命令
ls
find
最基本的功能是查找一个文件名或目录,常用格式如下:
find . -print (类似于 ls -lR)

find可使用如下属性进行查找:
-name 查找文件名,含通配符*?的文件名用引号括起来
-perm 00x000 八进制文件属性
-atime n n天之前访问过的文件
-mtime n n天之间修改过的文件
-ctime n 文件的状态在n前之间修改过
-exec command 如命令的返回代码为零(找到相应的文件)则真,command必须以
\; 结果,此外在命令的执行中 {} 为查找到的文件路径名
-ok command 与exec相类似,但在执行每个命令之间要求用户确认
-print 打印当前路径名
-newer filename 如文件的最后修改日期较filename新则为真
-type c c=[b,c,d,l,p,f]文件类型
-user username 如文件的属主为username则为真
-nouser 文件属主在/etc/passwd文件中不存在
-group grouname 文件组

逻辑运算符: -a -o !

示列:
find $HOME \( -name a.out -o -name "*.o" \) -atime +7 -exec rm {} \;
find . -atime 0 -print
find / .name .profile -print
find . -perm 777 -a -mtime 7 -exec chmod 755 {} \;

file
more
less
tail (tail -f filename)
head
wc
read 用于shell编程
col
pg (SYSV)

11. 编辑器
vi
ed
joe

12. 文件内容查找
grep
egrep
正规表达式: . * ^ $ + ? []

strings

13. 任务调度
at
atq 列出队列中的任务
crontab

14. 存储,归纳及压缩
compress .Z
uncompress .Z
cpio
dd dd if=inputfile of=outputfile
dd if=boot.img of=/dev/fd0H1440
pack .z 30%-50%文本文件
pcat pact file.z
gzip .gz
gunzip
tar tar -[txc]vf targetfile [sourcefile]
tar -cvf target.tar sourcefilelist
tar -tvf target.tar [filename]
tar -xvf target.tar [filename]
GNU TAR:
tar -zcvf target.tar.gz sourcefilelist
tar -zxvf target.tar.gz [filelist]
tar -ztvf target.tar.gz [filelist]

zcat .Z

uuencode
uudecode

15. 其他命令
date
env
unix2dos (linux没有)
dos2unix
uname
uptime
free
time
top

16. 文本处理
cut
fmt 每行格式转化为72列,用于邮件格式化
fold 折行处理,一行到多行,一般为80列
join
paste
sort
tr
tr '\"' '' < file1

#!/bin/sh

for i in *
do
mv $i `echo $i |tr /[a-z]/[A-Z]/`
done

uniq 报告/删除文件中相同的复制行
sed 流编辑器
sed 's/96/tt/' student.txt
awk
awk '{print $1" "$2}' sourcefile
awk -f class.awk student.txt > linux-student.txt
文件class.awk内容如下:

#
#class.awk
#
BEGIN {printf "%-12s%s\n","班级","学号 姓名";
printf "-------------------------------------------\n\n"}
/[1-9]+\B*$/ {class=$0}
/^9[5-8]+/ {printf "%-12s%s\n", class,$0 | "sort"}
#Enf of class.awk

awk -f traffic.awk traffic.txt
文件traffic.awk内容如下:
#
#traffic.awk
#
{ if ( $2 < 10000 ) t_0 += $2;
if ( $2 > 10000 && $2 < 50000) t_10 += $2;
if ( $2 > 50000 && $2 < 100000) t_50 += $2;
if ( $2 > 100000) t_100 += $2;
total += $2 }
END {printf "t_0 = %dKB %5.2f\%\n",t_0,t0*100/total;
printf "t_10 = %dKB %5.2f\%\n",t_10,t10*100/total;
printf "t_50 = %dKB %5.2f\% \n",t_50,t_50*100/total;
printf "t_100 = %dKB %5.2f\%\n",t_100,t_100*100/total;
printf "Total = %dKB\n", total}

#End of traffic.awk

17. 网络配置命令及故障排除命令
17.1 ifconfig
Interface Config , 网卡配置命令, 相关文件:/proc/net/dev
详细使用说明: man ifconfig

示例:
#ifconfig
lo Link encap:Local Loopback
网卡标识 封装类型: 本地回环

inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0
IP地址:127.0.0.1 广播地址:127.255.255.255 子网掩码:255.0.0.0

UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1
已启动 接受广播 本地回环 正在运行 最大传输单元: 3584 路由距离向量:1

RX packets:718 errors:0 dropped:0 overruns:0 frame:0
已接受数据包:718

TX packets:718 errors:0 dropped:0 overruns:0 carrier:0
已发送数据包:718

collisions:0
碰撞:0

eth0 Link encap:Ethernet HWaddr 00:80:C8:4C:6A:D0
网卡标识 封装类型: Ethernet 硬件(MAC)地址: 00:80:C8:4C:6A:D0

inet addr:202.118.66.81 Bcast:202.118.66.255 Mask:255.255.255.0
IP地址:202.118.66.81 广播地址:202.118.66.255 子网掩码:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
已启动 接受广播 正在运行 多点广播 最大传输单元: 1500 路由距离向量:1

RX packets:13900 errors:0 dropped:0 overruns:0 frame:0
已接受数据包:13900

TX packets:5859 errors:0 dropped:0 overruns:0 carrier:0
已发送数据包:5859

collisions:0
碰撞:0

Interrupt:10 Base address:0xe400
中断(IRQ):10 端口地址: 0xe400

#ifconfig eth0 显示eth0的相关信息
#ifconfig -a 显示所有网络设备的配置信息
#ifconfig eth0 down Down掉eth0
#ifconfig eth0 202.118.66.81 broadcast 202.118.66.255 [up]
#ifconfig eth0 202.118.66.81 broadcast 202.118.66.255 netmask 255.255.255.0
#ifconfig eth0 up

17.2 route
路由表维护命令, 相关文件: /proc/net/route

$ /sbin/route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
localnet * 255.255.255.0 U 0 0 49 eth0
192.168.1.0 * 255.255.255.0 U 0 0 655 eth1
192.168.2.0 * 255.255.255.0 U 0 0 498 eth2
192.168.3.0 * 255.255.255.0 U 0 0 825 eth3
127.0.0.0 * 255.0.0.0 U 0 0 13 lo
default olive.dlut.edu. 0.0.0.0 UG 1 0 4834 eth0

#route add default gw 202.118.66.1
#route add default gw 202.118.66.1 eth0
#/sbin/route add -net 202.118.68.0 netmask 255.255.252.0 gw 202.118.66.16
#/sbin/rouet del default 202.118.66.1
#/sbin/route del -net 202.118.68.0 netmask 255.255.252.0 gw 202.118.66.16

17.3 netstat
显示主机当前路由表, 相关文件: /proc/net/route
netstat -rn
/home/hbwork[102]netstat -rn

Routing Table:
Destination Gateway Flags Ref Use Interface
-------------------- -------------------- ----- ----- ------ ---------
202.118.70.27 202.118.66.16 UGHD 0 1
202.118.69.254 202.118.66.16 UGHD 0 1
202.118.68.243 202.118.66.16 UGHD 0 1
202.118.70.21 202.118.66.16 UGHD 0 0
202.118.71.10 202.118.66.16 UGHD 0 1
202.118.71.204 202.118.66.16 UGHD 0 1
202.118.68.160 202.118.66.16 UGHD 0 1
202.199.128.52 202.118.66.254 UGHD 0 2
202.118.68.66 202.118.66.16 UGHD 0 1
202.118.69.69 202.118.66.16 UGHD 0 1
202.118.69.228 202.118.66.16 UGHD 0 1
202.118.71.68 202.118.66.16 UGHD 0 1
202.118.70.37 202.118.66.16 UGHD 0 1
202.118.66.0 202.118.66.18 U 3 12259 hme0
224.0.0.0 202.118.66.18 U 3 0 hme0
default 202.118.66.1 UG 0 70354
127.0.0.1 127.0.0.1 UH 0 41316 lo0

Destionation: 目标网络或主机
Gateway: 下一个路由,认为距离目标较近的路由的IP地址,在数据传送时将发往
这一IP地址.
Flags:
U Router is up, 目标可达
H Specific router,到特定主机的路由
G 此路由为其他路由进行间接访问到的,如果没有G标志则表明相应的
路由器或主机是直接连接在相应的路由器上的.
D 此路由是ICMP协议的路径重定向信息所建立的.
M 由ICMP之重定向信息所修改

REFS: 在此路由上现在正在使用的链接数,这些连接可能是由连续时间较长的ftp或
telnet任务, 每个使用tcp的服务或应用在执行时此列值均加1.

Use: 自TCP/IP启动以来通过此路由器的数据包量.

Interface: 网卡逻辑名,UNIX不同取名不同.

17.4 nslookup
Name Server Lookup, DNS服务器诊断工具
使用示列:
[hbwork@helius hbwork]$ nslookup www.dlut.edu.cn
Server: cedrus.dlut.edu.cn
Address: 202.118.66.6

Name: peony.dlut.edu.cn
Address: 202.118.66.18
Aliases: www.dlut.edu.cn

[hbwork@helius hbwork]$ nslookup
Default Server: cedrus.dlut.edu.cn
Address: 202.118.66.6

> www.dlut.edu.cn
Server: cedrus.dlut.edu.cn
Address: 202.118.66.6

Name: peony.dlut.edu.cn
Address: 202.118.66.18
Aliases: www.dlut.edu.cn
> set q=ns #查询相应域的DNS服务器
> dlut.edu.cn #输入要查询的域名
Server: cedrus.dlut.edu.cn #默认域名服务器为cedrus.dlut.edu.cn
Address: 202.118.66.6 #参考/etc/resolv.conf文件

dlut.edu.cn nameserver = gingko.dlut.edu.cn
dlut.edu.cn nameserver = olive.dlut.edu.cn
dlut.edu.cn nameserver = cedrus.dlut.edu.cn
gingko.dlut.edu.cn internet address = 202.118.66.8
olive.dlut.edu.cn internet address = 202.118.68.1
olive.dlut.edu.cn internet address = 202.118.69.1
olive.dlut.edu.cn internet address = 202.118.70.1
olive.dlut.edu.cn internet address = 202.118.71.1
olive.dlut.edu.cn internet address = 202.118.66.16
cedrus.dlut.edu.cn internet address = 202.118.66.6

> dl.lnpta.net.cn #查询dl.lnpta.net.cn的域名服务器
Server: cedrus.dlut.edu.cn
Address: 202.118.66.6

Non-authoritative answer:
dl.lnpta.net.cn nameserver = ns.lnpta.net.cn

Authoritative answers can be found from:
ns.lnpta.net.cn internet address = 202.96.64.68

> server ns.lnpta.net.cn
Default Server: ns.lnpta.net.cn
Address: 202.96.64.68

server: ns.lnpta.net.cn
Address: 202.96.64.68

Non-authoritative answer:
www.dlut.edu.cn canonical name = peony.dlut.edu.cn
> dlut.edu.cn #查询域dlut.edu.cn的MX记录
Server: ns.lnpta.net.cn
Address: 202.96.64.68

Non-authoritative answer:
dlut.edu.cn preference = 1, mail exchanger = gingko.dlut.edu.cn

Authoritative answers can be found from:
dlut.edu.cn nameserver = gingko.dlut.edu.cn
dlut.edu.cn nameserver = CEDRUS.dlut.edu.cn
dlut.edu.cn nameserver = olive.dlut.edu.cn
gingko.dlut.edu.cn internet address = 202.118.66.8
CEDRUS.dlut.edu.cn internet address = 202.118.66.6
olive.dlut.edu.cn internet address = 202.118.71.1
olive.dlut.edu.cn internet address = 202.118.66.16
olive.dlut.edu.cn internet address = 202.118.68.1
olive.dlut.edu.cn internet address = 202.118.69.1
olive.dlut.edu.cn internet address = 202.118.70.1
> exit

17.5 ping
TCP/IP ICMP(Internet Control Message Protocol)诊断工具

ping [hostname|IpAddress]

Error Message: host unreachable
network unreachable

[hbwork@helius hbwork]$ ping 202.118.66.1
PING 202.118.66.1 (202.118.66.1): 56 data bytes
64 bytes from 202.118.66.1: icmp_seq=0 ttl=255 time=23.1 ms
64 bytes from 202.118.66.1: icmp_seq=1 ttl=255 time=2.1 ms
64 bytes from 202.118.66.1: icmp_seq=2 ttl=255 time=1.9 ms

--- 202.118.66.1 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 1.9/9.0/23.1 ms

17.6 hostname
显示或设置主机名

17.7 domainname
显示或设置主机域名

17.8 traceroute
Windows 95: tracert

traceroute hostname
traceroute destionation_ip_address
17.9 arp
显示或设置相应主机/ip地址的mac地址
相关文件: /proc/net/arp
cat /proc/net/arp

$arp hostname
$arp -a
$arp ip_address

显示或设置主机名需要root权限
#arp -s hostname eth_address [temp] [pub]
#arp -d hostname
#arp -d ip_address
#arp -f mac_ip_map_file 常用文件名为/etc/ether

1、与用户相关的命令
1.1 login
(在LINUX Redhat下此命令功能与Solaris/BSD不同,执行login会退出当前任务).

login:
Password:

相关文件:
在下面的这些文件中设定shell运行时必要的路径,终端类型,其他变量或特殊程序.

$HOME/.profile (Bourne shell, sh, bash)
$HOME/.cshrc (csh, tcsh)
$HOME/.tcshrc (tcsh)
/etc/passwd文件中列出每个用户的shell
/etc/csh.cshrc
/etc/csh.login
/etc/profile (Bourne shell, bash)
/etc/login (Bourne shell, bash)

csh: /etc/csh.cshrc和$HOME/.cshrc每次执行都会读取,
而/etc/csh.login和$HOME/.login只有注册shell才执行
修改相应文件后使用 source .cshrc使能相关修改,如果修改了path则
还需使用rehash刷新可执行文件hash表。

tcsh: $HOME/.tcshrc, 没有些文件读取.cshrc

sh: /etc/profile和$HOME/.profile注册shell
bash: /etc/profile和$HOME/.bash_profile注册shell读取
.bashrc交互式非注册shell才读取。

在sh/bash下手工执行相关文件:
. /etc/profile

相关文件执行顺序
sh: /etc/profile -> $HOME/.profile
csh/tcsh: /etc/csh.cshrc -> /etc/csh.login -> $HOME/.cshrc
-> $HOME/.login

变量的设置:
sh/bash: TERM=vt100; export TERM
OR: export TERM=vt100 (bash)
csh: setenv TERM vt100

没有常用的,只有实用的