Linux系统常用命令格式:
command [option] [argument1] [argument2] ...
其中option以“-”开始,多个option可用一个“-”连起来,如“ls -l -a”与“ls -la”的效果是一样的。根据命令的不同,参数分为可选的或必须的;所有的命令从标准输入接受输入,输出结果显示在标准输出,而错误信息则显示在标准错误输出设备。可使用重定向功能对这些设备进行重定向。
命令在正常执行结果后返回一个0值,如果命令出错可未完全完成,则返回一个非零值(在shell中可用变量$?查看)。在shell script中可用此返回值作为控制逻辑的一部分。
帮助命令:
man 获取相关命令的帮助信息
例如:man dir可以获取关于dir的使用信息。
info 获取相关命令的详细使用方法
例如:info info可以获取如何使用info的详细信息。
文件操作:
cat 显示文件内容和合并多个文件
clear 清屏
chattr 改变文件属性
chgrp 改变文件组权
chmod 改变文件或目录的权限
chown 改变文件的属权
comm 比较两个已排过序的文件
cp 将文件拷贝至另一文件
dd 从指定文件读取数据写到指定文件
df 报告磁盘空间使用情况
diff 比较两个文本文件,列出行不同之处
du 统计目录/文件所占磁盘空间的大小
file 辨识文件类型
emacs 功能强大的编辑环境
find 搜索文件并执行指定操作(find2)
grep 按给定模式搜索文件内容
head 显示指定文件的前若干行
less 按页显示文件
ln 创建文件链接
locate 查找符合条件的文件
more 在终端屏幕按帧显示文本文件
mv 文件或目录的移动或更名
rm/rmdir 删除文件/目录
sed 利用script来处理文本文件
sort 对指定文件按行进行排序
tail 显示指定文件的最后部分
touch 创建文件
tr 转换字符
vi 全屏编辑器
wc 显示指定文件中的行数,词数或字符数
which 在环境变量 $PATH设置的目录里查找符合条件的文件
压缩与备份:
bzip2/bunzip2 .bz2文件的压缩/解压缩程序
cpio 备份文件
dump 备份文件系统
gzip/gunzip .gz文件的压缩/解压缩程序
gzexe 压缩可执行文件
restore还原由倾倒(Dump)操作所备份下来的文件或整个文件系统(一个分区)
tar 将若干文件存档或读取存档文件
unarj 解压缩.arj文件
zip/unzip 压缩/解压缩 zip文件
zipinfo 列出zip压缩文件的详细信息
磁盘操作:
cd/pwd 切换目录/显示当前工作目录
df 显示磁盘的相关信息
du 显示目录或文件的大小
e2fsck 检查ext2/ext3文件系统的正确性
fdisk 对硬盘进行分区
fsck 检查文件系统并尝试修复错误
losetup 设置循环设备
ls 列出目录内容
mkdir 创建目录
mformat 对MS-DOS文件系统的磁盘进行格式化
mkbootdisk 建立目前系统的启动盘
mke2fs 建立ext2文件系统
mkisofs 制作iso光盘映像文件
mount/umount加载文件系统/卸载文件系统
quota 显示磁盘已使用的空间与限制
sync 将内存缓冲区内的数据写入磁盘
tree 以树状图列出目录的内容
系统操作:
alias 设置指令的别名
chkconfig 检查,设置系统的各种服务
clock 调整 RTC时间
date 显示或设置系统时间与日期
dmesg 显示开机信息
eval 重新运算求出参数的内容
exit 退出目前的shell
export 设置或显示环境变量
finger 查找并显示用户信息
free 显示内存状态
hostid 显示主机标识
hostname 显示主机名
id 显示用户标识
kill 删除执行中的程序或工作
last 列出目前与过去登入系统的用户相关信息
logout 退出系统
lsmod 显示已载入系统的模块
modprobe 自动处理可载入模块
passwd 设置用户密码
ps process status 报告程序状况
reboot 重启计算机
rhwo 查看系统用户
rlogin 远程登入
rpm 管理Linux各项套件的程序
shutdown 关机
su switch user变更用户身份
top 显示,管理执行中的程序
uname 显示系统信息
useradd/userdel 添加用户 /删除用户
userinfo 图形界面的修改工具
usermod 修改用户属性,包括用户的shell类型,用户组等,甚至还能改登录名
w 显示目前注册的用户及用户正运行的命令
whereis 确定一个命令的二进制执行码,源码及帮助所在的位置
who 列出正在使用系统的用户
whois 查找并显示用户信息
网络通信:
arp 网地址的显示及控制
ftp 文件传输
lftp 文件传输
mail 发送/接收电子邮件
mesg 允许或拒绝其他用户向自己所用的终端发送信息
mutt E-mail管理程序
ncftp 文件传输
netstat 显示网络连接、路由表和网络接口信息
pine 收发电子邮件,浏览新闻组
ping 向网络上的主机发送 icmp echo request包
ssh 安全模式下的远程登录
telnet 远程登录
talk 与另一用户对话
traceroute 显示到达某一主机所经由的路径及所使用的时间
wget从网络上自动下载文件
write 向其他用户的终端写信息
alias
说明:为命令设置别名、显示别名设置。
语法:alias [别名]=[指令名称] % 为[指令名称]起一个别名。
alias [别名] % 显示出[别名]所对应的命令。
alias % 显示所有别名设置。
bg
说明:将命令放置后台运行。
语法:bg [job]
该命令的各选项含义如下:
job 命令作业号。
export
说明:设置或显示环境变量。
语法:export [选项] [变量名称]=[变量设置值]
该命令的各选项含义如下:
-f代表[变量名称]中为函数名称;
-n删除指定变量,变量实际未删除,只是不输出到后续指令的执行环境中;
-p列出所有shell赋予程序的环境变量。
date
显示或设置系统时间与日期
语法: date [-d <字符串>] [-u] [+格式参数]
date [-s <字符串>] [-u] [+格式参数]
补充说明:
第一种语法可用来显示系统日期或时间,以%为开头的参数为格式参数,可指定日期或时间的显示格式。
第二种语法可用来设置系统日期与时间。只有管理员才有设置日期与时间的权限。
若不加任何参数,data会显示目前的日期与时间。
该命令的各选项含义如下:
-d<字符串> 显示字符串所指的日期与时间。字符串前后必须加上双引号。
-s<字符串> 根据字符串来设置日期与时间。字符串前后必须加上双引号。
-u 显示GMT。
--help 在线帮助。
--version 显示版本信息。
该命令可用的格式参数如下:
%H 小时(以00-23来表示)。
%I 小时(以01-12来表示)。
%K 小时(以0-23来表示)。
%l 小时(以0-12来表示)。
%M 分钟(以00-59来表示)。
%P AM或PM。
%r 时间(含时分秒,小时以12小时AM/PM来表示)。
%s 总秒数。起算时间为1970-01-01 00:00:00 UTC。
%S 秒(以本地的惯用法来表示)。
%Z 市区。
%a 星期的缩写。
%A 星期的完整名称。
%b 月份英文名的缩写。
%B 月份的完整英文名称。
%c 日期与时间。只输入date指令也会显示同样的结果。
%d 日期(以01-31来表示)。
%D 日期(含年月日)。
%j 该年中的第几天。
%m 月份(以01-12来表示)。
%U 该年中的周数。
%w 该周的天数,0代表周日,1代表周一,异词类推。
%x 日期(以本地的惯用法来表示)。
%X 时间(以本地的惯用法来表示)。
%y 年份(以00-99来表示)。
%Y 年份(以四位数来表示)。
%n 在显示时,插入新的一行。
%t 在显示时,插入tab。
%T 时间(含时分秒,小时以24小时制来表示)。
MM 月份(必要)。
DD 日期(必要)。
hh 小时(必要)。
mm 分钟(必要)。
CC 年份的前两位数(选择性)。
YY 年份的后两位数(选择性)。
ss 秒(选择性)。
例: date +%D
date +%x%X
date -d '6 days ago'
date -d 'now'
df
查看磁盘剩余空间
语法:df [选项] [filename]
该命令的各选项含义如下:
-h 以人性化的方式输出结果。
-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文件名
groupadd
建立新用户组。
语法:groupadd [-g gid [-o]][-r][-f]组名
该命令的各选项含义如下:
-g gid 指定组 ID-GID值;
-o 重复使用组 ID;
-r 用来建立系统账号;
-f 强制建立新用户组。
groupdel
删除用户组。
语法:groupdel组名
groupmod
语法:groupmod [-g gid [-o]][-n group_name]组名
该命令的各选项含义如下:
-g gid重新指定组ID值;
-o 重复使用组ID;
-n group_name 更改用户组名。
halt
关机命令。
语法:halt [-dfinpw]
该命令的各选项含义如下:
-d 不要在 wtmp(Login记录文件)中记录;
-f 不论目前的runlevel为何,不调用 shut down,即强制关闭系统;
-i 在关闭系统之前,关闭全部的网络接口;
-n 关闭系统前,不用先执行 sync (将缓存中的所有数据写入硬盘);
-p 关闭系统后,关闭电源;
-w 仅在 wtmp中记录,而不实际结束系统。
kill
终止进程
语法:kill [-s|p][-a] PID
该命令的各选项含义如下:
-s 指明发送给进程的信号。例如 -9 (强行终止),默认发送 TERM 信号。
-p 显示进程的ID,不发送信号。
-a 终止所有进程。
0 给所有在当前进程组中的进程发送信号。
-1 给所有进程号大于1的进程发送信号。
ps
查看进程状态
语法:ps [选项]
该命令的各选项含义如下:
-e/A 列出所有进程。
-u 选择有效的用户ID。
-p 选择指定终端下的进程。
-C 选择指定的文件名。
-f 列出所有详细信息。
-l 按长格式显示。
-j 按 job格式显示。
-x 选择没有控制终端的进程。
quota
显示磁盘的使用情况,一般用户可以查看自己使用磁盘的权限
语法:quota [选项]用户名或组名
该命令的各选项含义如下:
-g 显示用户所在组使用磁盘的权限。
-u 显示用户自己使用磁盘的权限。
-p 使显示信息简洁化。
reboot
重启命令,不必多说。
rename
批量修改文件名
语法:rename from to file ...
该命令的各选项含义如下:
from 源字符。
to 目标字符。
file 要改名的文件
rename .rm .rmvb *
%把所有文件的后辍由rm改为rmvb
rename 'tr/A-Z/a-z/' *
%把所有文件名中的大写改为小写
rm/rmdir
删除文件或者目录
语法:rm [选项] 文件名或目录名
rmdir 目录名(必须是空目录)
rm命令的各选项含义如下:
-d 使用这个选项后,rm大体想当于unlink。
-i 删除每个文件时给用户提示。
-r 删除整个目录,包括文件和子目录。
-v 删除每个文件时给出提示。
-f 强制删除,并且不给提示。
tail
输出文件内容后面的部分
语法:tail [选项]文件名
该命令的各选项含义如下:
-n 只显示后面的n行。
-f 动态显示,常用于跟踪消息文件。
top
查看CPU的使用率,修改进程运行优先级。
默认情况下进程按CPU使用率排序,可按PID(N),时限(A),常驻内存使用率(M),时间(T),和CPU使用率(P)来排序。
语法:top选项
该命令的各选项含义如下:
-d delay 指定刷新的秒数。
-p pid 查看指定pid的CPU使用率。
type
查看一个命令所在路径
语法:type command
whereis
定位可执行文件、源代码文件、帮助文件在文件系统中的位置
语法:whereis [-bmsu] [BMS目录名 -f ]文件名
该命令的各选项含义如下:
-b 定位可执行文件。
-m 定位帮助文件。
-s 定位源代码文件。
-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B 指定搜索可执行文件的路径。
-M 指定搜索帮助文件的路径。
-S 指定搜索源代码文件的路径。
w
查看登录用户和他们正在做什么
语法:w [选项] [user]
该命令的各选项含义如下:
-h 不打印信息头。
-s 使用短格式显示信息。
-f 打印用户来源。
-V 显示版本信息
who
查看当前用户的便当情况
语法:who [选项]
该命令的各选项含义如下:
-i 显示用户的活动状况。
-u 与-i相同。
-m 显示用户自身的情况。
last
列出登录过系统的用户信息。
语法:last [-aRx][-n <个数>][用户账号名…][终端号…]
该命令的各选项含义如下:
-a 把登录系统用户所在主机的主机名或 IP地址显示在最后一行;
-R 不显示登录系统用户所在的主机名或 IP地址;
-x 显示系统关机、重新启动、改变运行等级等信息;
-n <个数> 指定要查看最近多少个登录用户;
[用户账号名…] 指定查看某个用户账号的登录记录;
[终端号…] 指定查看从某个终端登录的记录。
lsmod
显示已载入系统的内核模块。
语法:lsmod
lspci
显示所有系统PCI设备的总线、设备信息。
语法:lspci [-bmMnt][-v[v]][-x[xx]][-s][[:][][.[]]][-d []:[]][-i][-p]
该命令的各选项含义如下:
-b 显示 IRQ和 I/O地址;
-m 复制 PCI设备数据信息;
-M 搜索所有 PCI设备;
-n 显示 PCI厂商的代码;
-t 以树状图表显示所有的总线、桥、设备以及它们之间的关系;
-v 显示详细信息;
-vv 显示更详细信息;
-x 以十六进制方式显示 PCI配置空间的前64字节内容;
-xx 以十六进制方式显示 PCI配置空间的所有内容;
-s[[]:][][.[]] 显示符合指定总线,插槽和功能的设备;
-d[]:[] 显示符合厂商 ID和设备 ID的设备;
-i 设置 file作为 PCI ID数据库,默认为 /usr/share/pci.ids;
-p 设置 dir作为包含 PCI信息的目录,默认为 /proc/bus/pci。
mkbootdisk
制作一张与当前系统版本相同的Linux启动软盘。
语法:mkbootdisk [--device <设备名>] [Kernel版本]
该命令的各选项含义如下:
--device <设备名> 指定软盘所在软驱的设备名,通常是/dev/fd0;
[Kernel版本] 当前系统的内核版本。
modinfo
显示内核模块信息。
语法:modinfo [-adphV][-f format_string]模块文件名
该命令的各选项含义如下:
-a 显示该内核模块的作者;
-d 显示该内核模块的描述;
-p 显示该内核模块所支持的参数;
-h 显示帮助信息;
-V 显示版本信息;
-f format_string 指定任意格式的字符串,用于从 module_file的 ELF部分提取模块信息。
shutdown
关闭Linux系统及计算机。
语法:shutdown [-fFhr][-t <称数>][时间][警告信息]
该命令的各选项含义如下:
-f 重新启动时不执行 fsck检查磁盘;
-F 重新启动时执行 fsck检查磁盘;
-h 关闭 Linux系统后关机;
-r 关闭 Linux系统后重新启动;
-t<秒数> 几秒钟后开始执行shutdown命令;
[时间] 以 hh:mm或 +mm方式来设定执行 shutdown命令的时间,也可以用 now表示现在就执行;
[警告信息] 可以通过它把要关机的信息发给登录在系统上的每一个用户。
su
可以通过 su让用户暂时换成另一个用户账号登录。如果不带用户名,即为换成 root帐号。
语法:su [-fl][-c <指令>] [用户账号]
该命令的各选项含义如下:
- 效果与 -l选项相同;
-f 用另一个用户账号登录后,不去读该用户的 .profile等启动设置文件;
-l 用户账号改变后,也改变工作目录,就像该用户账号新登录一样;
-c<指令> 执行完指定的指令后,就回到原来的用户账号。
chattr
改变 Linux系统中文件的属性。
语法:chattr [-RV][-v<版本编号>][+/-/=<属性>] [文件或目录]
该命令的各选项含义如下:
-R 递归处理,将指定目录下的所有文件及子目录一并处理;
-V 显示指令执行过程;
-v<版本编号> 设置文件或目录版本;
+/-/=<属性> 开启/关闭/指定文件或目录的该项属性;
[文件或目录] 包括
a:让文件或目录只能以 append模式修改,而不能直接编辑写入;
A:不更新文件或目录的最后存取时间;
c:将文件或目录压缩后存放;
d:将文件或目录排除在 Dump操作之外;
i:一经设置,该文件或目录将无法删除、更名、修改;
s:保密性删除文件或目录;
S:即时更新文件或目录,不经过 Buffer缓冲区;
u:预防意外删除。
du
用来统计目录或文件所占的磁盘空间大小。
语法:du [-chkmsS][--exclude=<目录/文件>][--max-depth=<目录层数>] [文件/目录]
该命令的各选项含义如下:
-c 不仅显示每个文件/目录的大小,还显示所有目录和文件的总和;
-h 以 KB、MB、GB为单位,提高输出信息的可读性;
-k 以 KB为单位统计;
-m 以 MB为单位统计;
-s 仅显示统计值;
-S 显示个别目录的大小时,不包括该目录的子目录的大小;
--exclude=<目录/文件> 略过指定的目录和文件;
--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。
passwd
设置或更改用户账号密码。
语法:passwd [-dlSu][用户名称]
该命令的各选项含义如下:
-d 删除密码;
-l 锁住账号;
-S 列出与密码相关的信息;
-u 解开已上锁的账号;
[用户名称] 要设置密码的用户账号,如果没有指定,则代表设置当前登录用户的密码。
cal
显示简单日历。
语法:cal [-mjy][[mouth] year]
该命令的各选项含义如下:
-m 视星期一为每周的第一天,默认为周日;
-j 以 Julina形式显示,即不分月份,以每年1月1日为第一天;
-y 显示今年的所有月份的日历。
rup
显示主机状态,包括本地主机、网络主机及本地网络上的所有主机状态。
语法:rup [-dhlt] [host…]
该命令的各选项含义如下:
-d 显示网络主机的本地时间;
-h 按主机名的字母顺序显示信息;
-l 按主机的平均负载排序;
-t 按主机的系统运行时间排序
ping
可以用来检查是否可以与网络上的一台主机连通。
语法:ping [-fn][-c<连接次数>][-i<间隔时间>][-I<网络设备>]
该命令的各选项含义如下:
-f 产生ping风暴,会对网络带来严重负担,仅限root用户使用,可用来统计数据包的丢包、误码率;
-n 只输出数值,不尝试获取主机名;
-i<间隔时间> 设定2个 Ping信息包发出的间隔时间,单位为秒;
-I<网络设备> 当系统有多个设备时,可以用该参数指定某一网络设备。
clear
清除屏幕上的信息,它类似于DOS中的 cls命令。清屏后,提示符移动到屏幕左上角。
语法:clear
comm
如果想对两个有序的文件进行比较,可以使用comm命令。
语法:comm [-123 ] file1 file2
该命令的各选项含义如下:
说明:该命令是对两个已经排好序的文件进行比较。其中file1和file2是已排序的文件。
comm读取这两个文件,然后生成三列输出:仅在file1中出现的行;仅在file2中
出现的行;在两个文件中都存在的行。如果文件名用“-”,则表示从标准输入读取。
选项 1、2或 3抑制相应的列显示。
例如:comm -12 就只显示在两个文件中都存在的行;
comm -23 只显示在第一个文件中出现而未在第二个文件中出现的行;
comm -123 则什么也不显示。
wc
wc命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
语法:wc [选项]文件 ...
说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。
该命令的各选项含义如下:
-c统计字节数。
-l统计行数。
-w统计字数。
这些选项可以组合使用。输出列的顺序和数目不受选项的顺序和数目的影响。总是按下述顺序显示并且每项最多一列。
行数、字数、字节数、文件名
如果命令行中没有文件名,则输出中不出现文件名。
tar
tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案,如软盘。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。Linux上的tar是GNU版本的。
语法:tar [主选项+辅选项]文件或者目录
该命令的各选项含义如下:
tar命令有主选项和辅选项,主选项是必须要有的,它告诉tar要做什么事情,
辅选项是辅助使用的,可以选用。
主选项:
c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。
r 把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。
t 列出档案文件的内容,查看已经备份了哪些文件。
u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
x 从档案文件中释放文件。
辅助选项:
b 该选项是为磁带机设定的。其后跟一数字,用来说明区块的大小,系统预设值为20(20*512 bytes)。
f 使用档案文件或设备,这个选项通常是必选的。
k 保存已经存在的文件。例如我们把某个文件还原,在还原的过程中,遇到相同的文件,不会进行覆盖。
m 在还原文件时,把所有文件的修改时间设定为现在。
M 创建多卷的档案文件,以便在几个磁盘中存放。
v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
w 每一步都要求确认。
z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
例:$ tar cvf usr.tar /home
把/home目录下包括它的子目录全部做备份文件,备份文件名为usr.tar。
例:$ tar czvf usr.tar.gz /home
把/home目录下包括它的子目录全部做备份文件,并进行压缩,备份文件名为usr.tar.gz。
例:$ tar xzvf usr.tar.gz
把usr.tar.gz这个备份文件还原并解压缩。
例:$ tar tvf usr.tar | more
查看usr.tar备份文件的内容,并以分屏方式显示在显示器上。
要将文件备份到一个特定的设备,只需把设备名作为备份文件名。
例:$ tar cf /dev/fd0 /home
用户在/dev/fd0设备的软盘中创建一个备份文件,并将/home目录中所有的文件都拷贝到备份文件中。
要恢复设备磁盘中的文件,可使用xf选项:$ tar xf /dev/fd0
如果用户备份的文件大小超过设备可用的存贮空间,如软盘,您可以创建一个多卷的tar备份文件。M选项指示tar命令提示您使用一个新的存贮设备,当使用M选项向一个软驱进行存档时,tar命令在一张软盘已满的时候会提醒您再放入一张新的软盘。这样您就可以把tar档案存入几张磁盘中。
例: $ tar cMf /dev/fd0 /home
要恢复几张盘中的档案,只要将第一张放入软驱,然后输入有x和M选项的tar命令。在必要时您会被提醒放入另外一张软盘。
例: $ tar xMf /dev/fd0
2) tar调用bzip2
bzip2是一个压缩能力更强的压缩程序,.bz2结尾的文件就是bzip2压缩的结果。与bzip2相对的解压程序是bunzip2。tar中使用-j这个参数来调用gzip。
下面来举例说明一下:
# tar -cjf all.tar.bz2 *.jpg
这条命令是将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个bzip2压缩过的包,包名为all.tar.bz2
# tar -xjf all.tar.bz2
这条命令是将上面产生的包解开。
finger
查询用户信息
语法:finger[选项][使用者][用户@主机]
该命令的各选项含义如下:
-s 显示用户的注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。
-l 除了用-s选项显示的信息外,还显示用户主目录、登录shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。
-p 除了不显示.plan文件和.project文件以外,与-l选项相同。
netstat
netstat命令的功能是显示网络连接、路由表和网络接口信息,可以让用户得知目前都有哪些网络连接正在运作。
语法:netstat[选项]
该命令的各选项含义如下:
-a 显示所有socket,包括正在监听的。
-c 每隔1秒就重新显示一遍,直到用户中断它。
-i 显示所有网络接口的信息,格式同“ifconfig -e”。
-n 以网络IP地址代替名称,显示出网络连接情形。
-r 显示核心路由表,格式同“route -e”。
-t 显示TCP协议的连接情况。
-u 显示UDP协议的连接情况。
-v 显示正在进行的工作。
sort
sort命令的功能是对文件中的各行进行排序。sort命令有许多非常实用的选项,这些选项最初是用来对数据库格式的文件内容进行各种排序操作的。实际上,sort命令可以被认为是一个非常强大的数据管理工具,用来管理内容类似数据库记录的文件。 sort命令将逐行对文件中的内容进行排序,如果两行的首字符相同,该命令将继续比较这两行的下一字符,如果还相同,将继续进行比较。
语法:sort [选项]文件
该命令的各选项含义如下:
说明:sort命令对指定文件中所有的行进行排序,并将结果显示在标准输出上。如不指定输入文件或使用“-”,则表示排序内容来自标准输入。
sort排序是根据从输入行抽取的一个或多个关键字进行比较来完成的。排序关键字定义了用来排序的最小的字符序列。缺省情况下以整行为关键字按ASCII字符顺序进行排序。
改变缺省设置的选项主要有:
-m 若给定文件已排好序,合并文件。
-c 检查给定文件是否已排好序,如果它们没有都排好序,则打印一个出错信息,并以状态值1退出。
-u 对排序后认为相同的行只留其中一行。
-o 输出文件将排序输出写到输出文件中而不是标准输出,如果输出文件是输入文件之一,sort先将该文件的内容写入一个临时文件,然后再排序和写输出结果。
改变缺省排序规则的选项主要有:
-d按字典顺序排序,比较时仅字母、数字、空格和制表符有意义。
-f将小写字母与大写字母同等对待。
-I忽略非打印字符。
-M作为月份比较:“JAN” <“FEB” < ... <“DEC”。
-r按逆序输出排序结果。
+posl -pos2指定一个或几个字段作为排序关键字,字段位置从posl开始,到pos2为止(包括posl,不包括pos2)。如不指定pos2,则关键字为从posl到行尾。字段和字符的位置从0开始。
-b 在每行中寻找排序关键字时忽略前导的空白(空格和制表符)。
-t separator 指定字符separator作为字段分隔符。
下面通过几个例子来讲述sort的使用。
用sort命令对text文件中各行排序后输出其结果。请注意,在原文件的第二、三行上的第一个单词完全相同,该命令将从它们的第二个单词vegetables与fruit的首字符处继续进行比较。
$ cat text
vegetable soup
fresh vegetables
fresh fruit
lowfat milk
$ sort text
fresh fruit
fresh vegetables
lowfat milk
vegetable soup
用户可以保存排序后的文件内容,或把排序后的文件内容输出至打印机。下例中用户把排序后的文件内容保存到名为result的文件中。
$ sort text>result
以第2个字段作为排序关键字对文件example的内容进行排序。
$ sort +1-2 example
对于file1和file2文件内容反向排序,结果放在outfile中,利用第2个字段的第一个字符作为排序关键字。
$ sort -r -o outfile +1.0 -1.1 example
sort排序常用于在管道中与其他命令连用,组合完成比较复杂的功能,如利用管道将当前工作目录中的文件送给sort进行排序,排序关键字是第6个至第8个字段。
$ ls -l | sort +5 -7
sort命令也可以对标准输入进行操作。例如,如果您想把几个文件文本行合并,并对合并后的文本行进行排序,您可以首先用命令cat把多个文件合并,然后用管道操作把合并后的文本行输入给命令sort,sort命令将输出这些合并及排序后的文本行。在下面的例子中,文件veglist与文件fruitlist的文本行经过合并与排序后被保存到文件clist中。
$ cat veglist fruitlist | sort > clist
touch
touch指令改变文件的时间记录。若文件不存在,系统会建立一个新的文件。
语法:touch [选项] file1 [file2 ...]
该命令的各选项含义如下:
-a改变档案的读取时间记录。
-m改变档案的修改时间记录。
-c假如目的档案不存在,不会建立新的档案。与 --no-create的效果一样。
-f不使用,是为了与其他 unix系统的相容性而保留。
-r使用参考档的时间记录,与 --file的效果一样。
-d设定时间与日期,可以使用各种不同的格式。
-t设定档案的时间记录,格式与 date指令相同。
--no-create不会建立新档案。
--help列出指令格式。
--version列出版本讯息。
--version列出版本讯息。
chgrp
变更文件或目录的所属群组。在UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可。
语法:chgrp [选项] [所属群组] [文件或目录...]
该命令的各选项含义如下:
-v 显示指令执行过程。
-c 效果类似"-v"参数,但仅回报更改的部分。
-f 不显示错误信息。
-h 只对符号连接的文件作修改,而不更动其他任何相关文件。
-R 递归处理,将指定目录下的所有文件及子目录一并处理。
--help 在线帮助。
--reference=<参考文件或目录> 把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同。
--version 显示版本信息。