LINUX基本命令

来源:互联网 发布:多啦衣梦 新式网络传销 编辑:程序博客网 时间:2024/06/04 19:37
 

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个字符上系统给出文件的用户权限。该序列分成四个域。第一个字符为类型域,第234个字符为用户主域,第567个字符为同组用户域,第8910个字符为其它用户域,域中字符的含义如下:
l
在类型域中:
d
表示此文件是一个目录
-
表示此文件是一个普通文件
b
表示此文件是一个特殊的块设备I/O文件
c
表示此文件是一个特殊的字符设备I/O文件
l
表示此文件是一个连接文件。在其文件名称后紧跟与它连接的文件路径及名称。如:
unix -> /stand/unix
l
用户主同组用户其它用户域中:
r
表示有读权限。含义是可以拷贝或显示该文件或目录中的内容。
w
表示有写权限。含义是可以改变或修改该文件。
x
表示有执行权限。含义是可以执行该文件或用cd命令进入该目录,在该目录中建
立文件或子目录等。
-表示无权限。
ln
在文件之间建立链接
格式:ln [-b][-d][-F][-f][-i][-n][-s][-v] 源文件 目录文件或目录
选项说明:
-b
为删除的文件建立备份。
-d 允许root用户建立硬链接。
-F
b相同。
-f
强行删除目标文件。
-i
在删除文件时给出提示。
-n
当目标文件是目录的符号链接时,替代该符号链接。
-s
用符号链接代替硬链接(建立符号链接)
-v
输出被链接文件的文件名。

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 [-b][-A][-E][-T][-n][-s][-v] 文件名
选项说明:
-b
不显示文件中的空行。
-A
相当于 -v -E -T (-vET)
-E
在文件的每一行行尾加上“$”字符。
-T 将文件中的Tab键用字符“^I”来显示。
-n
在文件的每行前面显示行号。
-s
将连续的多个空行用一个空行来显示。
-v
显示除TabEnter之外的所有字符。
下面的命令演示了如何显示file文件中的行号
$cat -n file

例:#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 [选项] 文件名
选项说明:
+n
由第n行开始显示
+/str
由含有str字符串的地方开始显示。
mount 加载文件系统
格式:mount 磁盘或分区的设备文件 载入点 选项
选项说明:
-t
文件系统类型(fat32vfat)
-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
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 选项 源文件名 目标文件名
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 [-b][-f][-i][-u][-v] 源文件 目标文件或文件夹
选项说明:
-b
为源文件作备份
-f
文件重命名时强制覆盖己有文件。
-i
覆盖文件时给出提示。
-u
目标文件比源文件新时不覆盖。
-v 移动文件时给出相应的提示。

例:
#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 :
将会使得系统在删除时,不提出任何警告讯息。
-d 使用这个选项后,rm大体想当于unlink
-i
删除每个文件时给用户提示。
-r
删除整个目录,包括文件和子目录。
-v
删除每个文件时给出提示。
注意:
不要随便使用 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]
常用参数:

-e/A 列出所有进程。
-u
选择有效的用户ID
-p
选择指定终端下的进程。
-C
选择指定的文件名。
-f
列出所有详细信息。
-l
按长格式显示。
-j
job格式显示。
-x
选择没有控制终端的进程。
-a
列出所有用户的 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(程序名) 等。

free命令

free命令的功能是查看当前系统内存的使用情况,它显示系统中剩余及已用的物理内存和交换内存,以及共享内存和被核心使用的缓冲区。

该命令的一般格式为: free [-b | -k | -m] 命令中各选项的含义如下:

-b 以字节为单位显示。
-k
K字节为单位显示。
-m
以兆字节为单位显示。

uptime命令

 

uptime命令显示系统已经运行了多长时间,它依次显示下列信息:现在时间、系统已经运行了多长时间、目前有多少登录用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。

 

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

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

$type ls

kill——杀进程

kill 指令的用途是送一个信号给某一个进程。因为大部份送的都是用来杀掉进程 ,因此称为 kill
格式:kill [-s|p][-a] PID
选项说明:
-s
指明发送给进程的信号。例如-9(强行终止),默认发送TERM信号。
-p
显示进程的ID,不发送信号。
-a
终止所有进程。
0
给所有在当前进程组中的进程发送信号。
-1
给所有进程号大于1的进程发送信号。

SIGNAL :为一个讯号的数字,从 0 31 ,其中 9 SIGKILL ,也就是一般用来杀掉一些无法正常终止进程的讯号。
你也可以用 kill -l 来察看可代替 signal 号码的数目字。
less
交互式显示文件内容
格式:less 文件名
说明:
可以通过C-v(Page-Down)C-b(Page-Up)向后向前翻页,C-pC-n向后向前移一行。这个命令和后面要说的more命令都可以按q键退出。



3
.用户操作指令

su 改变当前用户的ID
tail
输出文件内容后面的部分
格式:tail [选项] 文件名
选项说明:
-n
只显示后面的n行。
-f
动太显示,常用于跟踪消息文件。

 

w 查看登录用户和他们正在做什么
格式:w [-hsfV] [user]
选项说明:
-h
不打印信息头。
-s 使用短格式显示信息。
-f
打印用户来源。
-V
显示版本信息。


who
查看当前用户的便当情况
格式:who [-i][-u][-m]
选项说明:
-i
显示用户的活动状况。
-u -i相同。
-m
显示用户自身的情况。


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

#find / -user bugboy -exec rm {} /;
whatis
查看可以使用的man page和命令的基本功能介绍
例:$whatis top
chgrp——
改变组的属性
格式:
chgrp [-R] group file...
例:
#chgrp library file1 file2…
(将file1file2…等的用户组改为library



chown——
改变文件或目录的所有者

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

$chown -R bugboy dir

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

出于系统安全考虑,Linux系统中的每一个用户除了有其用户名外,还有其对应的用户口令。因此使用useradd命令增加时,还需使用passwd命令为每一位新增加的用户设置口令;用户以后还可以随时用passwd命令改变自己的口令。

该命令的一般格式为: passwd [用户名] 其中用户名为需要修改口令的用户名。只有超级用户可以使用“passwd 用户名修改其他用户的口令,普通用户只能用不带参数的passwd命令修改自己的口令。

该命令的使用方法如下:

输入

passwd< Enter>

在(current UNIX passwd:下输入当前的口令
new password:提示下输入新的口令(在屏幕上看不到这个口令):
系统提示再次输入这个新口令。

输入正确后,这个新口令被加密并放入/etc/shadow文件。选取一个不易被破译的口令是很重要的。

选取口令应遵守如下规则:
口令应该至少有六位(最好是八位)字符;
口令应该是大小写字母、标点符号和数字混杂的。

超级用户修改其他用户(xxq)的口令的过程如下,

# passwd root
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully


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

你可以自己编辑这两个文件,注意每个用户名占一行。
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——编辑命令

任何用户最常做的事要数创建和编辑文件,包括文档、报告和文字,viVisual 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 charchar代替游标处的字符
—Rtext
Esc〉由text代替游标处的字符
—cwtext
Esc〉由text取代游标处的单词
—Ctext
Esc〉由text取代游标处至该行结尾处
—cc
使整行空白,但保留游标位置,让你开始打入
如删除指令一样,在指令前打入的数,表示执行该指令多少次。
l
正文模式检索
要检索文件,必需在指令态下进行。所谓「模式」,就是一个特定字符串,其中可含空格符。
strReturn 向前搜寻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


sort
命令

功能:sort命令的功能是对文件中的各行进行排序。sort命令有许多非常实用的选项,这些选项最初是用来对数据库格式的文件内容进行各种排序操作的。实际上,sort命令可以被认为是一个非常强大的数据管理工具,用来管理内容类似数据库记录的文件。

Sort命令将逐行对文件中的内容进行排序,如果两行的首字符相同,该命令将继续比较这两行的下一字符,如果还相同,将继续进行比较。

语法:

sort [选项] 文件

说明:sort命令对指定文件中所有的行进行排序,并将结果显示在标准输出上。如不指定输入文件或使用“- ”,则表示排序内容来自标准输入。

sort排序是根据从输入行抽取的一个或多个关键字进行比较来完成的。排序关键字定义了用来排序的最小的字符序列。缺省情况下以整行为关键字按ASCII字符顺序进行排序。

改变缺省设置的选项主要有:

- m 若给定文件已排好序,合并文件。
- c
检查给定文件是否已排好序,如果它们没有都排好序,则打印一个出错信息,并以状态值1退出。
- u
对排序后认为相同的行只留其中一行。 (这是一个常用参数,可能去除文件中的重复行)
- o
输出文件 将排序输出写到输出文件中而不是标准输出,如果输出文件是输入文件之一,sort先将该文件的内容写入一个临时文件,然后再排序和写输出结果。

改变缺省排序规则的选项主要有:

- d 按字典顺序排序,比较时仅字母、数字、空格和制表符有意义。
- f
将小写字母与大写字母同等对待。
- I
忽略非打印字符。
- M
作为月份比较:“JAN”<“FEB”
- r
按逆序输出排序结果。
posl - pos2 指定一个或几个字段作为排序关键字,字段位置从posl开始,到pos2为止(包括posl,不包括pos2)。如不指定pos2,则关键字为从posl到行尾。字段和字符的位置从0开始。
- b
在每行中寻找排序关键字时忽略前导的空白(空格和制表符)。
- t separator
指定字符separator作为字段分隔符。

 

uniq命令

功能:文件经过处理后在它的输出文件中可能会出现重复的行。例如,使用cat命令将两个文件合并后,再使用sort命令进行排序,就可能出现重复行。这时可以使用uniq命令将这些重复行从输出文件中删除,只留下每条记录的唯一样本。

语法:

uniq [选项] 文件

说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如果输入文件用“- ”表示,则从标准输入读取。

该命令各选项含义如下:

- c 显示输出中,在每行行首加上本行在文件中出现的次数。它可取代- u- d选项。
- d
只显示重复行。
- u
只显示文件中不重复的各行。
- n
n个字段与每个字段前的空白一起被忽略。一个字段是一个非空格、非制表符的字符串,彼此由制表符和空格隔开(字段从0开始编号)。
+n
n个字符被忽略,之前的字符被跳过(字符从0开始编号)。
- f n
- n相同,这里n是字段数。
- s n
与+n相同,这里n是字符数。

 



备份命令:tarc

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中的一个或多个。

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
tar -zxvf filename(
解压)

tar -zcvf filename.tar.gz filename(压缩)


gzip命令

减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。

语法:gzip [选项] 压缩(解压缩)的文件名

各选项的含义:

-c 将输出写到标准输出上,并保留原有文件。
-d
将压缩文件解压。
-l
对每个压缩文件,显示下列字段:

压缩文件的大小
未压缩文件的大小
压缩比
未压缩文件的名字

-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。
-t
测试,检查压缩文件是否完整。
-v
对每一个压缩和解压的文件,显示文件名和压缩比。
-num 用指定的数字num调整压缩的速度,-1--fast表示最快压缩方法(低压缩比),-9--best表示最慢压缩方法(高压缩比)。系统缺省值为6

例如:gzip -l aa.gz(列出aa.gz压缩包中的内容

3、unzip命令

MS Windows下的压缩软件winzip压缩的文件如何在Linux系统下展开呢?可以用unzip命令,该命令用于解扩展名为.zip的压缩文件。

语法:unzip [选项] 压缩文件名.zip

各选项的含义分别为:

-x 文件列表 解压缩文件,但不包括指定的file文件。
-v
查看压缩文件目录,但不解压。
-t
测试文件有无损坏,但不解压。
-d
目录 把压缩文件解到指定目录下。
-z
只显示压缩文件的注解。
-n
不覆盖已经存在的文件。
-o
覆盖已存在的文件且不要求用户确认。
-j
不重建文档的目录结构,把所有文件解压到同一目录下。


Df——
显示硬盘空间使用情况
磁盘空间以块为单位进行分配,典型的块是512字节。

格式:df [-t][-x][-k][-p][-a][-m][filename]
选项说明:
-t
只输出类型列在fstype中的文件系统。
-x 只输出类型没有列在fstype中的文件系统。
-k
显示空间以K为单位。
-m
显示空间以M为单位。
-a 将空间为0的文件系统也输出。
filename
指定要查看的文件的大小。
例:
#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
只显示整个目录占用的空间

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命令相似。


fdisk/sfdisk 查看硬盘分区信息
格式:fdisk -l [-u] [device ...]
fdisk -s partition

选项说明:
-u
列出分区表的时候以扇区的大小代替柱面大小。
-l
列出给定设备的分区表,如果没有给定设备,则列出/proc/partions中设备的分区表。
-s partition
给出partition分区的大小(以块为单位)
file
识别文件类型
格式:file 文件名

head 输出文件内容前面的部分
格式:head [选项][文件]……
选项说明:
-n
输出文件的前n行,默认输出10行。
-c
指定输出文件的大小,单位为byte

 

 

Linux文件内容查询命令
grepfgrepegrep命令

  这组命令以指定模式搜索文件,并通知用户在什么文件中搜索到与指定的模式匹配的字符串,并打印出所有包含该字符串的文本行,在该文本行的最前面是该行所在的文件名。grep命令一次只能搜索一个指定的模式;egrep命令检索扩展的正则表达式(包括表达式组和可选项);fgrep命令检索固定字符串,它不识别正则表达式,是快速搜索命令。

  这组命令在搜索与定位文件中特定的主题方面非常有用。要搜索的模式可以被认为是一些关键词,您可以用它们来搜索文件中包含的这些关键词。编写程序时,可以用它来寻找某一个函数,或是相关的词组。grep命令的搜索功能比fgrep强大,因为grep命令的搜索模式可以是正则表达式,而fgrep却不能。有关正则表达式请参见shell一章。

  该组命令中的每一个命令都有一组选项,利用这些选项可以改变其输出方式。例如,可以在搜索到的文本行上加入行号,或者只输出文本行的行号,或者输出所有与搜索模式不匹配的文本行,或只简单地输出已搜索到指定模式的文件名,并且可以指定在查找模式时忽略大小写。

  这组命令在指定的输入文件中查找与模式匹配的行。如果没有指定文件,则从标准输入中读取。正常情况下,每个匹配的行被显示到标准输出。如果要查找的文件是多个,则在每一行输出之前加上文件名。

  语法:

  grep [选项] [查找模式] [文件名1,文件名2……]

  egrep [选项] [查找模式] [文件名1,文件名2……]

  fgrep [选项] [查找模式] [文件名1,文件名2……]

  这组命令各选项的含义为:

  - E 每个模式作为一个扩展的正则表达式对待。

  - F 每个模式作为一组固定字符串对待(以新行分隔),而不作为正则表达式。

  - b在输出的每一行前显示包含匹配字符串的行在文件中的字节偏移量。

  - c 只显示匹配行的数量。

  - i 比较时不区分大小写。

  - h 在查找多个文件时,指示grep不要将文件名加入到输出之前。

  - l 显示首次匹配串所在的文件名并用换行符将其隔开。当在某文件中多次出现匹配串时,不重复显示此文件名。

  - n 在输出前加上匹配串所在行的行号(文件首行行号为1)。

  - v 只显示不包含匹配串的行。

  - x 只显示整行严格匹配的行。

  - e expression 指定检索使用的模式。用于防止以“-”开头的模式被解释为命令选项。

  - f expfile expfile文件中获取要搜索的模式,一个模式占一行。

  对该组命令的使用还需注意以下方面:

  在命令后键入搜索的模式,再键入要搜索的文件。其中,文件名列表中也可以使用特殊字符,如“*”等,用来生成文件名列表。如果想在搜索的模式中包含有空格的字符串,可以用单引号把要搜索的模式括起来,用来表明搜索的模式是由包含空格的字符串组成。否则,Shell将把空格认为是命令行参数的定界符,而grep命令将把搜索模式中的单词解释为文件名列表中的一部分。在下面的例子中,grep命令在文件example中搜索模式“text file”

  $ grep ’text file’ example

  用户可以在命令行上用Shell特殊字符来生成将要搜索的文件名列表。在下面的例子中,特殊字符“*”用来生成一个文件名列表,该列表包含当前目录下所有的文件。该命令将搜索出当前目录下所有文件中与模式匹配的行。

  $ grep data *

  特殊字符在搜索一组指定的文件时非常有用。例如,如果想搜索所有的C程序源文件中特定的模式,您可以用“*.c”来指定文件名列表。假设用户的 C程序中包含一些不必要的转向语句(goto语句),想要找到这些语句,可以用如下的命令来搜索并显示所有包含goto语句的代码行:

  $ grep goto *.c

  用户可以在命令行上键入搜索模式,也可以使用-f选项从指定文件中读取要搜索的模式。在文件中,每个搜索模式占一行。如果经常要搜索一组常见字符串时,这个功能非常有用。在下面的例子中,用户要在文件exam中搜索字符串“editor”“create”,就把要搜索的模式放置在文件mypats中,然后,grep命令从文件mypats中读取要搜索的模式。

  $ cat mypats

  editor

  create

  $ grep -f mypats exam

  文件查找命令   find命令

  功能:在目录结构中搜索文件,并执行指定的操作。此命令提供了相当多的查找条件,功能很强大。

  语法:find 起始目录 寻找条件 操作

  说明:find命令从指定的起始目录开始,递归地搜索其各个子目录,查找满足寻找条件的文件并对之采取相关的操作。

  该命令提供的寻找条件可以是一个用逻辑运算符notandor组成的复合条件。逻辑运算符andornot的含义为:

  (1and:逻辑与,在命令中用“-a”表示,是系统缺省的选项,表示只有当所给的条件都满足时,寻找条件才算满足。例如:

  $ find –name ’tmp’ –xtype c -user ’inin’

  该命令寻找三个给定条件都满足的所有文件。

  (2or:逻辑或,在命令中用“-o”表示。该运算符表示只要所给的条件中有一个满足时,寻找条件就算满足。

  例如:

  $ find –name ’tmp’ –o –name ’mina*’

  该命令查询文件名为’tmp’或是匹配’mina*’的所有文件。

  (3not:逻辑非,在命令中用表示。该运算符表示查找不满足所给条件的文件。

  例如:

  $ find ! –name ’tmp’

  该命令查询文件名不是’tmp’的所有文件。

  需要说明的是:当使用很多的逻辑选项时,可以用括号把这些选项括起来。为了避免Shell本身对括号引起误解,在话号前需要加转义字符“/”来去除括号的意义。

  例:$ find /–name ’tmp’ –xtype c -user ’inin’ / 寻找条件有以下选项:

  首先,下列各个选项中的n值可以有三种输入方式,假设n20,则:

  +20 表示20以后(212223等)

  -20 表示20以前(191817等)

  20 表示正好是20

  1. 以名称和文件属性查找。

  - name ’字串查找文件名匹配所给字串的所有文件,字串内可用通配符*?[ ]

  - lname ’字串查找文件名匹配所给字串的所有符号链接文件,字串内可用通配符*?[ ]

  -gid n 查找属于ID号为n的用户组的所有文件。

  -uid n 查找属于ID号为n的用户的所有文件。

  -group ’字串查找属于用户组名为所给字串的所有的文件。

  -user ’字串查找属于用户名为所给字串的所有的文件。

  -empty 查找大小为0的目录或文件。

  -path ’字串查找路径名匹配所给字串的所有文件,字串内可用通配符*?[ ]

  -perm 权限 查找具有指定权限的文件和目录,权限的表示可以如711644

  -size n[bckw] 查找指定文件大小的文件,n后面的字符表示单位,缺省为b,代表512字节的块。

  -type x 查找类型为x的文件,x为下列字符之一:

  b 块设备文件

  c 字符设备文件

  d 目录文件

  p 命名管道(FIFO

  f 普通文件

  l 符号链接文件(symbolic links

  s socket文件

  -xtype x -type基本相同,但只查找符号链接文件。

  2. 以时间为条件查找

  - amin n 查找n分钟以前被访问过的所有文件。

  - atime n 查找n天以前被访问过的所有文件。

  - cmin n 查找n分钟以前文件状态被修改过的所有文件。

  - ctime n 查找n天以前文件状态被修改过的所有文件。

  - mmin n 查找n分钟以前文件内容被修改过的所有文件。

  - mtime n 查找n天以前文件内容被修改过的所有文件。

  3. 可执行的操作

  - exec 命令名称 {} 对符合条件的文件执行所给的Linux 命令,而不询问用户是否需要执行该命令。{}表示命令的参数即为所找到的文件;命令的末尾必须以“ /结束。

  - ok 命令名称 { } 对符合条件的文件执行所给的Linux 命令,与exec不同的是,它会询问用户是否需要执行该命令。

  - ls 详细列出所找到的所有文件。

  - fprintf 文件名 将找到的文件名写入指定文件。

  - print 在标准输出设备上显示查找出的文件名。

  - printf 格式 格式的写法请参考有关C语言的书。

  例1:查找当前目录中所有以main开头的文件,并显示这些文件的内容。

  $ find . - name ‘main*’ - exec more {} /;

  例2:删除当前目录下所有一周之内没有被访问过的a .out*.o文件。

  $ find . /- name a.out - o - name ‘*.o’//

  > - atime +7 - exec rm {} /;

  说明如下: 命令中的“.”表示当前目录,此时find将从当前目录开始,逐个在其子目录中查找满足后面指定条件的文件。/(和/)表示括号(),其中的“/”称为转义符。之所以这样写是由于对Shell而言,(和)另有不同的含义,而不是这里的用于组合条件的用途。“- name a.out”是指要查找名为a.out的文件;“- name ‘*.o’”是指要查找所有名字以 .o结尾的文件。这两个- name之间的- o表示逻辑或(or),即查找名字为a.out或名字以 .o结尾的文件,find在当前目录及其子目录下找到这佯的文件之后,再进行判断,看其最后访问时间是否在7天以前(条件-atime +7),若是,则对该文件执行命令rm- exec rm{ }/;)。其中{ }代表当前查到的符合条件的文件名,/;则是语法所要求的。上述命令中第一行的最后一个/是续行符。当命令太长而在一行写不下时,可输入一个/,之后系统将显示一个>,指示用户继续输入命令。

  locate命令

  locate命令用于查找文件,它比find命令的搜索速度快,它需要一个数据库,这个数据库由每天的例行工作(crontab)程序来建立。当我们建立好这个数据库后,就可以方便地来搜寻所需文件了。

  该命令的一般形式为:

  locate 相关字

  例如:查找相关字issue

  $ locate issue

  /etc/issue

  /etc/issue.net

  /usr/man/man5/issue.5

  /usr/man/man5/issue.net.5

whereis 定位可执行文件、源代码文件、帮助文件在文件系统中的位置
格式:whereis [-bmsu] [BMS 目录名 -f ] 文件名
选项说明:
-b
定位可执行文件。
-m
定位帮助文件。
-s
定位源代码文件。
-u
搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B
指定搜索可执行文件的路径。
-M
指定搜索帮助文件的路径。
-S 指定搜索源代码文件的路径。



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


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


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


Shutdown——
多用户情况下关机
格式:

shutdown 命令可以安全地关闭或重启Linux系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息。该命令还允许用户指定一个时间参数,可以是一个精确的时间,也可以是从现在开始的一个时间段。精确时间的格式是hh:mm,表示小时和分钟;时间段由“+”和分钟数表示。系统执行该命令后,会自动进行数据同步的工作。

该命令的一般格式为: shutdown [选项] [时间] [警告信息] 命令中各选项的含义为:

- k 并不真正关机,而只是发出警告信息给所有用户。
- r
关机后立即重新启动。
- h
关机后不重新启动。
- f
快速关机,重启动时跳过fsck
- n
快速关机,不经过init程序。
- c
取消一个已经运行的shutdown

需要特别说明的是,该命令只能由超级用户使用。


#shutdown -g0 -y -i0

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

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

at 在某一特定时间执行指定的命令
格式:at [-V][-q 队列][-f 文件][-m] time
选项说明:
-V
显示标准的错误输出。
-f 可将作业存在一个文件中,用这个选项指定文件。例如一个shell文件。
-q
指定队列名称,默认为c
-m
执行后给用户发邮件。
time
指定开始执行的时间。时间格式为: HHMM,日期格式:MM/DD/YYMM.DD.YYMMDDYY 下面的例子演示了在20043112134分执行一个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

 




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

语音处理

oggenc 压缩音乐文件为.ogg格式
格式:oggenc 文件名
*.wav文件压缩为*.ogg格式

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

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不支持

原创粉丝点击