myfriend2010的博客
===========================================================
AIX常用命令
===========================================================

AIX常用命令查看交换区信息:
lsps -a
显示交换区的分布信息
lsps -s
显示交换区的使用信息
slibclean
清除处理程序遗留的旧分页信息
smit mkps
建立交换区空间信息
swapon -a
启动所有的分页空间
/etc/swapspaces
存放分页空间表格信息显示卷信息:
lsvg
显示卷的名称
lsvg -l rootvg
显示rootvg卷的详细信息

mount
卷的方法:
varyonvg datavg
加载datavg
mount /dev/data1
加载datavg下的一个data1
裸设备类型:raw,jfs jfs可以转变成文件系统,而raw则不行
在裸设备上安装oracle系统:修改裸设备的权限,如裸设备名为system01,安装数据库用户为oracle
chown oracle:dba /dev/system01
chown oracle:dba /dev/rsystem01
在使用文件时必须用rsystem01

smit
快速路径名称:(smit:图形方式,smitty:字符方式)
dev
设备管理
diag
诊断
jfs
定期档案管理系统
lvm
逻辑卷册系统管理员管理
nfs NFS
管理
sinstallp
软件安装及维护
spooler
列印队列管理
system
系统管理
tcpip TCP/IP
管理
USER
使用者管理
clstart
clstop:启动和停止cluster
lssrc -g cluser
:查看cluser的状态
查看已安装的软件信息:
ls -aF /usr/lpp (lpp:Licensed Program Products)
查看安装媒体内容:
installp -q -d /dev/cdrom -l
启动时自动加载文件系统信息:需要加载的信息存放在/etc/filesystems
mount -t nf
加载所有在/ect/filesystems中定义type=nfs的文件系统显示已加载的文件系统及状态: df -v,mount
查看错误日志信息:
errpt -a
有关TCP/IP的命令网路卡:
smit chgenet,chgtok,chgfddi,opschange,mktty:adptr
架构快速路径
smit mkinet,ppp:slip
ppp快速路径
ifconfig:config
界面位址:
/etc/hosts
静态主机表
/etc/resolv.conf
位址解析的名称服务器
/etc/named.boot
名称服务器架构
/etc/named.ca
根名称服务器快取
/etc/named.data
位址列表
/etc/named.rev
反转指标列表
nslookup
查询名称服务器资讯网络路由:
route
管理路由
netstat -rn
列出定义的路由
routed
路由(daekmin rip)
gated
路由(daekmin ripegphello)
/etc/gateways
已知网关
/etc/networks
已知网路服务:
/etc/services
/etc/inetd.conf
TCP/IP
群组子系统:
/etc/rc.net
startsrc -g tcpip
启动全部的tcpip子系统
startsrc -s inetd
启动主要internet除错:
iptrace
启动封包追踪
ipreport
追踪结果格式化输出
netstat
网络统计
ping
检查是否可以到达查看HACMP,外部硬盘信息:
lscfg -v
lsdev -Cc adapter
对等机器信息:
/etc/.rhosts
/etc/hosts.equiv
/etc/hosts
观察进程内存使用情况:
ps aux
观察参数%mem:内存使用百分比 RSS:实际使用内存
vmstat free
的单位为块,缺省值为4096bytst

以下命令在AIX 5.1上测试通过。
"
关于内核
显示AIX系统内核是32位还是64位:
bootinfo -K
如何改变内核模式(32位或64位)
/unix
文件连接到一个可引导的映像。通过命令ls -l /unix查看:
/unix -> /usr/lib/boot/unix_up # 32 bit uniprocessor kernel
/unix -> /usr/lib/boot/unix_mp # 32 bit multiprocessor kernel
/unix -> /usr/lib/boot/unix_64 # 64 bit multiprocessor kernel
AIX系统安装时,缺省安装的内核是32位。可以用如下命令更改内核模式:
ln -sf /usr/lib/boot/unix_64 /unix
ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix
bosboot -ad /dev/hdiskxx
shutdown -r
注意:/dev/hdiskxx是指引导逻辑卷/dev/hd5所在的硬盘。可通过下面命令来查看xx是几:
lslv -m hd5


"
关于硬件
显示机器硬件是32位还是64位:
bootinfo -y
查看机器的物理内存是多少:
bootinfo -r

lsattr -El sys0 -a realmem
查看机器是否支持64位内核(是否64位硬件)
/usr/sbin/bootinfo -p
如果返回32,则表示硬件是32位的;如果返回的是chrp,则表示硬件是64位的机器。
显示当前磁带设备rmt0的属性:
lsattr -l rmt0 -E
显示缺省的磁带设备rmt0的属性:
lsattr -l rmt0 -D
显示终端设备tty0的登录属性:
lsattr -l tty0 -a login -R
显示系统级属性:
lsattr -E -l sys0
查看当前系统有多少CPU
lscfg | grep proc
查看当前系统有多少硬盘而且是否被使用:
lspv
查看当前系统的详细配置:
lscfg -pv
也可以显示某一设备的配置:
lscfg -vl rmt0
查看当前系统的芯片名称、系统名、节点名、型号等:
uname -p #
显示芯片名称,例如:powerpc
uname –r #
显示操作系统的发行号
uname -s #
显示系统名,例如:AIX
uname -n #
显示节点名
uname –a #
显示系统名、节点名、版本、机器ID
uname –M #
显示型号,例如:IBM,7046-B50
uname -v #
显示操作系统版本
uname -m #
显示机器ID


"
关于AIX
查看AIX的版本、发行号、MLMaintenance Level)级别:
oslevel -r

lslpp -h bos.rte
如何改变文件系统大小,例如:将/usr文件系统增加1000000字节:
chfs -a size=+1000000 /usr
如何使用CD
mount -V cdrfs -o ro /dev/cd0 /cdrom
查看本机的IP地址:
ifconfig -a

host Fully_Qualified_Host_Name
例如:host cyclop.austin.ibm.com
查找哪一个文件集(fileset)包含特定的文件,例如:查找/usr/bin/vmstat属于哪一个文件集。
lslpp -w /usr/bin/vmstat
显示哪一个文件集包含/usr/bin/svmon
Which_fileset svmon
查看某一级别的ML中所有文件是否都已经安装:
instfix -i | grep ML
如何确定某一补丁(fix)是否安装,例如:查看IY24043是否安装
instfix -ik IY24043
显示哪些文件集需要安装或修改:
lppchk -v
查看交换区(paging space)的分配和使用:
lsps -a


"
关于卷组和逻辑卷
创建卷组:
mkvg -y name_of_volume_group -s partition_size list_of_hard_disks
partition_size
单位是MB,它是11024之间的一个数。(2的次幂,例如:1, 2, 4, 8, 16, 32等,缺省是4MB。)
创建逻辑卷:
mklv -y name_of_logical_volume name_of_volume_group number_of_partition
显示当前系统的所有卷组:
Lsvg
显示卷组rootvg的详细信息:
lsvg rootvg
显示属于rootvg的所有硬盘:
lsvg -p rootvg
如何添加一个硬盘到卷组中:
extendvg Volume_Group_Name hdisk0 hdisk1 ... hdiskn

如何替换一个硬盘:
1
extendvg Volume_Group_Name hdisk_new
2
migratepv hdisk_bad hdisk_new
3
reducevg -d Volume_Group_Name hdisk_bad
如何做一个逻辑卷镜像:
1
mklvcopy Logical_Volume_Name Number_of_copies
2
Syncvg Volume_Group_Name

AIX上,有一个很方便的系统管理命令smit。上面提到的命令中,如逻辑卷操作部分就可以smit轻松的完成

使用AIX系统及基本命令

一、系统的启动

1
、内部自检


2
、加电自检


3
、装入内核程序


4
、软件配置及初始化


二、注册

在控制台上注册有一些选项和设置:


1
、重新开始(Start over)按此按纽可删除原来的输入,于是可重新输入用户名,再次登录。


2
、选项(Options)按此按纽可选择以下几项:
语言 会话 命令行注册 切换到命令行环境 重置注册屏幕 重新启动X-server 用户名和口令都输入正确后,将会进入系统进行工作。

三、更改口令

通过使用passwd命令,可以修改口令字。例如:

$passwd
Changing password for "User"
User's Old password:
User's New password:
Re-enter User's new password:
这样输入正确后,更改口令成功。下次注册时,须使用新的口令,才能注册成功。


四、目录管理


1
、显示当前工作目录

pwd

2
、显示目录内容

ls [-option] [name]
其参数的意义分别是:

-a
:列出包含以 . 起始的隐藏档在内的所有文件名

-t
:依照文件最后修改时间之顺序,依序列出文件名

-F
:列出目前目录下之文件名及其类型。/结尾表示为目录名称,*结尾表示为执行档,@结尾表示为
symblic link
-l
:列出目录下所有文件之许可权、拥有者、文件大小、修改时间及名称

-lg
:同上,并显示出文件之拥有者群组名称

-R
:显示出目录下,以及其所有子目录之文件名


3
、改变当前目录
cd 转到登录时的工作目录 转到指定目录 转到当前目录的上一层目录

4
、创建目录

mkdir Directory

5
、删除目录

rmdir Directory

6
、目录换名

mv SourceDirectory TargetDirectory

7
、目录拷贝

cp SourceDirectory TargetDirectory

五、文件管理


1
、文件拷贝

cp SourceFile TargetFile
cp SourceFile TargetDirectory

2
、文件删除

rm File

3
、文件链接

ln SourceFile TargetFile

4
、文件移动/换名

mv SourceFile TargetFile or TargetDirectory

5
、显示文件内容

more
pg
cat
head
tail

6
、文件查找

find / -name .profile -print
find . -perm 0600 -print
find . -ctime 1 -print
find . -inum 2145 -print
find . -user abc -print

六、改变文件/目录属性

每一个文件或目录都有一个属主、一个组名和一组存取权限、访问时间等等。


1
、改变文件或目录的最近访问时间

touch

2
、改变文件或目录的属主

chown

3
、改变文件或目录的属组

chgrp

4
、改变文件或目录的存取权

chmod
chmod g+w File
chmod u+r File
chmod u=rwx File
chmod 755 File

七、DOS格式文件的使用


1
、对磁盘进行DOS格式化

dosformat /dev/fd0

2
、显示DOS文件的目录

dosdir

3
、读DOS格式文件

dosread File1 File2

4
、写DOS格式文件

doswrite File1 File2

5
、删除DOS格式文件

dosdel File

八、进程控制


1
、查询进程状态

ps
ps -a
ps -ef
ps -l
ps -u uid

2
、终止进程的执行

kill 19160
kill -9 19160

3
、对进程的控制

nohup
nice
sleep
wait

4
、在指定的时间运行程序

at
batch
cron /usr/bin/crontab
crontab
/var/spool/cron/crontabs/

九、退出系统和关机

exit
Ctr + d
logout
shutdown [ -option ] [ +time message ]
shutdown不带任何参数时,机器会向连在其上的所有终端发出一条关机信息,接着在一分钟后关闭所有终端,杀掉所有在系统上运行的进程,卸除所有文件系统,最后关闭系统。

你也可以在shutdown后加上一些参数,它们分别是:

-F
: 快速关机,没有任何警告信息
(warning)
-r
: 关机后重起

文档编辑命令
AIX 中,常用的文档编辑命令是 vi 下面,我们就来学习一下有关vi的使用决 窍。
vi中,必须牢记它是有两个状态的 ---- 输入状态与命令状态。由输入状态切换到命令状态,必须ESC键;而从命令状态转换到输入状态的命令比较多,有a AiIsScCoO等,

其次,必须掌握光标的基本移动方法。因为 AIX 的许多命令都是与光标所在的位 置相关的。请牢记,只有在命令状态下才能移动光标。你可以用方向键移动,也可以用hjkl来移动。其中,h 向左,j 向下,k向上,l向右。

第三,记住基本的插入、删除命令。



1
、插入或附加正文

插入或附加正文都是向文件中加入新内容,在光标前插入字符的命令为 i ,在当前行的行头插入字符的命令为 I ,在光标后附加字符的命令为 a ,在当前行的行尾附 加字符的命令为 A ,在当前行后加入若干行新内容的命令为 o ,在当前行之前加 入若干行新内容的命令为 O ,这6个命令都将使 vi 由命令状态转换到插入状态,当加入新内容后,必须按 ESC 键使 vi 由插入状态切换到命令状态。


2
、删除正文

vi 中删除正文的命令比较多,可以按字符、单词和行等不同的单位进行删除。删除字符的命令将使 vi 继续处于命令状态。下面是各删除键的意义及删除结束后 光标的位置。

删除键意义删除后光标的位置

x
键删除光标所在的字符移动到本行中下一个字符

X
键删除光标前一个字符停留在原来的那个字符

D
键删除光标至行尾的字符在本行的行尾

dd
键删除光标所在行移动到下一行


3
、查找或修改正文


/
表达式
?表达式
前者是表示从当前光标位置开始向后查找,问号表示从当前光标位置开始向前查找


4
、保存文本与退出
vi

: w
保存文件内容


: w !
强行保存文件内容


: q
退出 vi 状态


: q !
强制退出 vi 状态


: wq
存盘并退出




Shell

Shell
是一个命令解释器,也是一种程序设计语言。它有Korn shell Bourne shell C shell等,AIX使用的是K shell


1
、初始化文件.profile(.dtprofile)和用户环境的订制

概括地将,.profile应完成确认设置用户终端类型、定义各种必要的shell变量、等等。下面是一个.profile的例子:

PATH=/usr/bin/ : /etc : /usr/sbin : /usr/lib : $HOME/bin : /usr/bin/X11 : /sbin : /bin
export PATH
export PS1='$PWD>'
export EDITOR=/usr/bin/vi
set -o vi
alias dir="ls -l"
K shell中常见的环境变量有:

PATH
查询程序的路径变量(要分前后顺序
) PATH=/usr/bin : /etc
PS1 shell
的主提示符
PS1='$PWD>'
PS2 shell
的第二提示符
PS2='>'
PWD
当前的工作目录

TMOUT
无命令输入退出的等待时间(
) TMOUT=200
TERM
终端类型
TERM=ibm3151
HOME
用户的主目录
HOME=/home/user/
EDITOR
缺省的编辑器
EDITOR=/usr/bin/vi 用命令set可列出当前的变量。


myfriend2010 发表于:2007.12.15 10:01 ::分类: ( UNIX/LINUX ) ::阅读:(4647次) :: 评论 (0)
===========================================================
unix常用命令续
===========================================================
ARJ 流行的文件压缩/归档工具,可以用于 UNIX/LinuxDOS/Windows 和其它操作系统。用这种方式压缩的文件的扩展名通常是 .arj .ar 后台进程(Background Process 运行时无须用户输入的程序。可以在诸如 UNIX/Linux 之类的多任务操作系统上运行多个后台进程,而用户则与前台进程交互(例如,数据输入)。有些后台进程(例如守护程序)从来都不需要用户输入。其它一些进程只是在用户忙于目前运行于前台的程序时才临时处于后台。

Bash
Bourne Again SHell Bourne Shell 的增强版。(另请参阅“Korn Shell”。)

BDF
字体 用于 X Window 系统的各种位图字体。(另请参阅“PostScript 字体”和“TrueType 字体”。)

Bean
JavaBeans 体系结构的组件。

Beowulf
由相对廉价的计算机(包括 PC)组成的网络,这些计算机可能使用不同的处理器和硬件体系结构,由 Linux 和特殊的系统级软件将它们联合成一个海量并行计算系统。最终结果是一个能够以较低成本获得超级计算机计算能力的系统。这类系统对于诸如气象建模之类的计算密集型任务而言是非常理想的,因为可以将计算分配到几十、几百甚至几千个同时运行的独立处理器上。有时也称为“Beowulf 级超级计算机”或者超级群集计算机。更多关于 Beowulf 技术的信息,请阅读以下文章:www.linuxworld.com/linuxworld/lw-2000-04/lw-04-parallel.html www.ibm.com/press/prnews.nsf/Searchvw/3f4e88b102477aa5852568460067a52a

Bin
一个含有可执行程序的目录,这些程序主要是二进制文件。 二进制文件(Binary 已被编译成可执行程序的源代码。在 UNIX/Linux 世界里,有些软件仅作为源代码分发;有些软件包既包含源代码又包含二进制文件;还有一些软件包则只以二进制文件格式分发。 引导盘(Boot Disk 一张软盘,其中含有操作系统(如 Linux)引导(启动)计算机并从命令行运行一些基本程序所需的足够内容。如果因某种原因导致系统表现为无法引导,那么引导盘是必需的。引导盘还用于对硬盘进行分区和格式化、恢复主引导记录(Master Boot Record)或者复制特定文件等。

Bot
机器人(Robot)的简称。它是一个程序,旨在在几乎没有人工干预下在因特网上搜索信息。

Bourne Shell
一种流行的命令行 shell,它具有的优点比 DOS 命令提示符多很多。(另请参阅“Bash”和“Korn Shell”。)

BSD
Berkeley 软件分发版,Berkeley Software DistributionUNIX 加州大学伯克利分校开发的 UNIX。(另请参阅“FreeBSD”。)

Bzip2
一种较新的 UNIX/Linux 文件压缩程序,它比 Gzip 提供更大的压缩比。 C

CGI
(公共网关接口,Common Gateway Interface Web 服务器上,用来在脚本和/或应用程序之间传输数据,然后将该数据返回给 Web 页面或浏览器。CGI 脚本经常是使用 Perl 语言创建的,它能够生成动态 Web 内容(包括电子商业购物篮、讨论组、调查表单以及实时新闻等)。

CHS
(柱面/磁头/扇区,Cylinder/Head/Sector FDISK 在分区期间所需的磁盘信息。 客户机(Client 向服务器请求服务(例如,电子邮件)的机器。

CLU
(命令行实用程序,Command Line Utility 从命令行会话或 shell 运行的程序,如 Tar Mkdir 群集(Cluster 由运行 Linux 的工作站(PC 或其它机器)组成的网络。(另请参阅“Beowulf”。)

COLA
因特网新闻组 comp.os.linux.announce 的简称,该新闻组宣布一些与 Linux 相关的参考资料。 命令行界面(Command Line Interface)(CLI 全屏或窗口化的文本方式会话,在该会话中用户通过输入命令来执行程序,这些命令可以带参数,也可以不带参数。CLI 显示来自操作系统或程序的输出文本,并为用户输入提供命令提示符。 命令提示符(Command Prompt DOS/Windows OS/2 术语,是命令行界面的一部分,用户在该界面中输入命令。(另请参阅“Shell 提示符”。) 编译(Compile 将编程源代码转换成可执行程序。 编译型语言(Compiled Language)— 一种语言,它需要编译器程序将编程源代码转换成可执行的机器语言二进制程序。一经编译,就可从程序的二进制形式多次运行程序,而无需再次编译。编译型语言/程序运行往往比解释型语言或伪代码语言快,但却需要编译器(可能很昂贵),而且用编译型语言编程常常会比用解释型语言和伪代码语言编程难。编译型语言的例子有 C C++COBOL 以及 FORTRAN 编译器(Compiler 用于将编程源代码转换成可执行程序的程序。 控制台应用程序(Console Application 不需要(即便是提供了)图形用户界面就能运行的命令行程序。

Cron
Linux 守护程序,它在指定时间或按指定间隔执行规定的任务。 D 守护程序(Daemon)—操作系统的后台进程,通常具有root安全级别许可权。守护程序通常隐藏在后台,直至被某个事件(例如特定的时间或日期、时间间隔、收到电子邮件等)触发后它才会进入活动状态。 桌面(Desktop)—操作系统用户界面,旨在表示一个在上面放东西的办公桌。操作系统的桌面并不使用有形的电话、电灯、收/发箱等,而是使用程序及数据图标、窗口、任务栏和类似的东西。Linux 可以使用许多不同的桌面环境,包括 KDEGNOME X11,它们可以由用户安装。(另请参阅“GUI”、“窗口管理器”和“X Window 系统”。) 设备驱动程序(DeviceDriver)—一种程序,它充当操作系统与设备(端口、驱动器、监视器、打印机等)之间的媒介,它向操作系统说明该设备具备哪些能力,同时将操作系统命令转换成该设备可以理解的指令。 分发版(Distribution)—将Linux内核(核心)连同各种用户界面、实用程序、驱动程序及其它软件打包成可交付给用户的软件包。分发版通常是以免费下载或廉价 CD-ROM 软件包的形式提供给用户的。流行的分发版包括 Caldera OpenLinuxCoreLinuxDebianRed HatSlackwareSuSETurboLinux 及其它软件。

Dpkg
Debian 软件包管理器,Debian PackageManager)—可从因特网下载的打包及安装工具,它包含在 Debian Linux 中,但与其它分发版兼容。它生成具有 .DEB 扩展名的文件。与 RPM 类似。 E

Emacs
(用 MACroS 进行编辑,Editing with MACroS 一个流行的文本编辑器。

Enlightenment
用户界面(窗口管理器)之一。更多关于 AfterStep 的信息,请访问 www.afterstep.org。(另请参阅“AfterStep”、“GNOME”、“KDE”和“X Window 系统”。) F 文件系统(FileSystem)—一组程序,它们告诉操作系统如何访问及解释存储在磁盘或磁带驱动器或者其它存储媒介上的内容。常见的文件系统包括:FAT FAT-32DOS/Windows)、HPFSOS/2)、NFSNTFSWindows NT/2000)以及其它文件系统。 过滤器(Filter)—一种程序,它(从文件、程序输出或命令行输入)读取数据作为输入,根据一组预定义条件处理输入(如按字母顺序排序),然后输出处理过的数据。一些常见的过滤器包括 AwkGrepSed Sort

Finger
UNIX/Linux 命令,它提供登录用户的有关信息。 前台进程(ForegroundProcess)—在多任务操作系统(诸如UNIX/Linux)中,前台进程是用户当前与之交互的程序(例如,数据输入)。随着用户在程序之间切换,会导致这些程序在不同的时刻处于前台。在层叠的窗口环境中,前台进程是最前面的窗口。

FreeBSD
(免费伯克利软件分发版,Free Berkeley Software Distribution 类似于 Linux,因为它包含许多 GNU 程序,并且它运行的许多软件包与 Linux 所运行的相同。但一些内核功能的实现却不尽相同。(另请参阅“BSD UNIX”。)

FTP
(文件传送协议,File Transfer Protocol 与其它计算机(常常是软件资源库)来回传送文件的方法。
G


GCC
GNU C 编译器,GNU C Compiler GPL 管理的一个高质量 C 编译器。

GIMP
GNU 图像操作程序,GNU Image Manipulation Program 一种用于 Linux 的、流行的图像编辑器/绘图程序。

GNOME
GNU 网络对象模型环境,GNU Network Object Model Environment<span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana; LETTER-SP
myfriend2010 发表于:2007.10.15 11:29 ::分类: ( UNIX/LINUX ) ::阅读:(1013次) :: 评论 (1)
===========================================================
unix常用命令
===========================================================

a. 关於档案/目录处理的指令:

1. ls
这是最基本的档案指令。 ls 的意义为 "list",也就是将某一个目录或是
某一个档案的内容显示出来。 如果你在下 ls 指令後头没有跟著任何的档名,它将会显示出目前目录中所 有档案。 也可以在 ls 後面加上所要察看的目录名称或档案的名称,如

% ls /home2/X11R5

% ls first

ls
有一些特别的参数,可以给予使用者更多有关的资讯,如下
:

-a :
UNIX 中若一个目录或档案名字的第一个字元为 "." , 则使用
ls 将不会显示出这个档案的名字,我们称此类档案为隐藏档。如 tcsh 的初设档 .tcshrc;如果我们要察看这类档案,则必须加上参数 -a

-l :
这个参数代表使用 ls 的长( long )格式,可以显示更多的资讯,
如档案存取权,档案拥有者( owner ),档案大小,档案最後更新 日期,甚而 symbolic link 的档案是 link 那一个档等等。如下

% ls -l

drwx--x--x 2 jjtseng 512 Aug 8 05:08 18
drwx--x--x 2 jjtseng 512 Aug 8 22:00 19
-rw------- 1 jjtseng 566 Aug 8 05:28 makefile

2. cp
cp
这个指令的意义是复制("COPY") , 也就是将一个或多个档案复制成另
一个档案或者是将其复制到另一个目录去。

cp
的用法如下
:

cp f1 f2 :
将档名为 f1 的档案复制一份为档名为 f2 的档案。

cp f1 f2 f3 ... dir :
将档案 f1 f2 f3 ... 都以相同的档名复制一
份放到目录 dir 里面。
cp -r dir1 dir2 :
dir1 的全部内容全部复制到 dir2 里面。


cp
也有一些参数,如下
:

-i :
此参数是当已有档名为 f2 的档案时,若迳自使用 cp 将会将原来
f2 的内容掩盖过去,因此在要盖过之前必须先询问使用者一下。如使用者 的回答是y(yes)才执行复制的动作。

-r :
此参数是用来做递回复制用,可将一整颗子树都复制到另一个
目录中。

3. mv
mv
的意义为 move , 主要是将一档案改名或换至另一个目录。如同 cp ,它也有
三种格式:

mv f1 f2 :
将档名为 f1 的档案变更成档名为 f2 的档案。

mv dir1 dir2 :
将档名为 dir1 的目录变更成档名为 dir2 的目录。

mv f1 f2 f3 ... dir :
将档案 f1 f2 f3 ... 都移至目录 dir 里面。


mv
的参数有两个,-f -i , 其中 -i 的意义与 cp 中的相同,均是
interactive 询问之意。而 -f 为强迫( force ) , 就是不管有没有同名的档案,反正我就是要 搬过去,所有其他的参数遇到 -f 均会失效。

4. rm
rm
的意义是 remove ,也就是用来杀掉一个档案的指令。在 UNIX 中一
个被杀掉的档案除非是系统恰好有做备份,否则是无法像 DOS 里面一样还能够救回 来的。所以在做 rm 动作的时候使用者应该要特别小心。

rm
的格式如下
:

rm f1 f2 f3 .....
rm 的参数比较常用的有几个: -f , -i ,
-r

-f :
将会使得系统在删除时,不提出任何警告讯息。

-i :
在除去档案之前均会询问是否真要除去。

-r :
递回式的删除。
小心不要随便使用 rm -rf , 否则有一天你会"欲哭无泪"......

5. mkdir
mkdir
是一个让使用者建立一个目录的指令。你可以在一个目录底下使用

midir
建立一个子目录,使用的方法如下
:

mkdir dirname1 [ dirname2 ... ]
如此你就可以建立一个或多个目录。


6. chdir ( cd )
这是让使用者用来转移工作目录用的。

chdir
的用法如下
:

chdir dirname
如此你就可以将目前的目录转移到 dirname 这一个目录去。
或使用 "chdir .." 来转移到上一层目录。

7. rmdir
相对於 mkdir rmdir 是用来将一个"空的"目录杀掉的。如果一个目录下面
没有任何档案,你就可以用 rmdir 指令将其除去。rmdir 的使用法如下:

rmdir dirname1 [ dirname2 .... ]
如果一个目录底下有其他的档案, rmdir 将无法将这个目录杀掉,除非使用

rm
指令的 -r 选项。


8. pwd
pwd
会将目前目录的路径( path )显示出来,例如
:

9. cat/more/less
以上三个指令均为察看档案内容的指令。cat 的意义是猫....不不不,是

concatenate
,在字典上的意思是"连结,串成锁状"( 语出资工电子
词典 cdict ),其实就是把档案的内容显示出来的意思。 cat 有许多奇怪 的参数,较常为人所使用的是 -n 参数,也就是把显示出来的内容加上行 号。 cat 的用法如下:

cat [-n] :
自标准输入读进内容,你可以用 pipe 将别的程式的输出转向
cat .
cat [-n] filename :
filename 的内容读进来,显示在标准输出上。
问题在於 cat 它是不会停下来的,因此并不好用( 试想如果一个萤幕二十 四行,而一个档案四百行,cat 一出来将会劈哩啪啦不断的卷上去,使用者 很难据此得到他们所需的资讯。) 所以才有人又写了 more 出来。

more ,
跟据蔡文能老师的说法是"再多一点就好"more 可以将所观察的档案
跟据终端机的形态一页页的显示出来,再根据使用者的要求换页或卷行。如果 使用者要在某一个档案中搜寻一个特定的字串,则按 / 然後跟著打所要搜寻 的单字即可进行搜寻。more 也可以找得到。more 的使用法如下:

more filename
如果你在使用中觉得已经看到了所要看的部份,可以按´离开 more 的使用。
在使用中按´亦可以使用编辑器来编辑所观看的档案。

less
的用法与 more 极类似,原先它就是为了弥补 more 只能往前方卷页的缺
点而设计。 less 的用法如下:

less filename
其与 more 不同的是它可以按 y 来往上卷一行,并且可以用"?"来往回搜寻你所
要找的单字。

10. chmod
chmod
为变更档案模式用( change mode ) . 这个指令是用来更改档案的存取模
( access mode )。在 UNIX 一个档案上有可读(r)可写(w)可执行(x)三种模式, 分别针对该档案的拥有者( onwer )、同群者( group member )( 你可以 ls -lg 来观看某一档案的所属的 group ),以及其他人( other )。一个档案如果改成可 执行模式则系统就将其视为一个可执行档,而一个目录的可执行模式代表使用者 有进入该目录之权利。chmod 就是用来变更一些档案的模式,其使用方式如下:

chmod [ -fR ] mode filename ...
其参数的意义如下
:

-f Force. chmod
不会理会失败的动作。

-R Recurive.
会将所有子树下的所有子目录及档案改为你所要改成的模式。


mode
可以为一个三位或四位的八进位数字,来表示对某些对象的存取权。详情
可参阅 chmod(1) manual page 中有关 Absolute Modes 的说明。 或是用一个字串来表示,请参考 chmod(1) 的说明。
b.
关於 Process 处理的指令
:

1. ps
ps
是用来显示目前你的 process 或系统 processes 的状况。
以下列出比较常用的参数: 其选项说明如下:
-a
列出包括其他 users process 状况。

-u
显示 user - oriented process 状况 。

-x
显示包括没有 terminal 控制的 process 状况。

-w
使用较宽的显示模式来显示 process 状况 。
我们可以经由 ps 取得目前 processes 的状况,如 pid , running state 等。

2. kill
kill
指令的用途是送一个 signal 给某一个 process 。因为大部份送的都是
用来杀掉 process SIGKILL SIGHUP ,因此称为 kill kill 的用法 :

kill [ -SIGNAL ] pid ...
kill -l

SIGNAL
为一个 singal 的数字,从 0 31 ,其中 9 SIGKILL ,也就是一
般用来杀掉一些无法正常 terminate 的讯号。其馀讯号的用途可参考 sigvec(2) 中对 signal 的说明。 你也可以用 kill -l 来察看可代替 signal 号码的数目字。kill 的详细情形 请参阅 man kill

c.
关於字串处理的指令
:

1. echo
echo
是用来显示一字串在终端机上。□ echo -n 则是当显示完之後不会有跳行的动作。



2. grep/fgrep
grep
为一过滤器,它可自一个或多个档案中过滤出具有某个字串的行,或是
自标准输入过滤出具有某个字串的行。

fgrep
可将欲过滤的一群字串放在某一个档案中,然後使用 fgrep 将包含有
属於这一群字串的行过滤出来。

grep
fgrep 的用法如下
:

grep [-nv] match_pattern file1 file2 ....
fgrep [-nv] -f pattern_file file1 file2 ....

-n
把所找到的行在行前加上行号列出

-v
把不包含 match_pattern 的行列出

match_pattern
所要搜寻的字串

-f
pattern_file 存放所要搜寻的字串


d.
网路上查询状况的指令
:

1. man
man
是手册 ( manual ) 的意思。 UNIX 提供线上辅助( on-line help )的功能,

man
就是用来让使用者在使用时查询指令、系统呼叫、标准程式库函式、各种表
格等的使用所用的。man 的用法如下:

man [-M path] [[section] title ] .....
man [-M path] -k keyword ...

-M path man
所需要的 manual database 的路径。
我们也可以用设定环境变数 MANPATH 的方式来取代 -M 选项。
title
这是所要查询的目的物。

section
为一个数字表示 manual 的分类,通常 1 代表可执行指令,

2
代表系统呼叫( system call ) 3 代表标准函数,等等。
像下面 man 查询的片段:

SEE ALSO
apropos(1), cat(1V), col(1V), eqn(1), lpr(1), more(1),
nroff(1), refer(1), tbl(1), troff(1), vgrind(1), vtroff(1),
whatis(1), eqnchar(7), man(7), catman(8)
我们如要参考 eqnchar(7) 的资料,则我们就输入 man 7 eqnchar
便能取得我们所要的辅助讯息。
-k keyword
用来将含有这项 keyword title 列出来。


man
UNIX 上是一项非常重要的指令,我们在本讲义中所述之用法均仅只是一
个大家比较常用的用法以及简单的说明,真正详细的用法与说明还是要请你使用
man
来得到。


2. who
who
指令是用来查询目前有那些人在线上。


3. w
w
指令是用来查询目前有那些人在线上,同时显示出那些人目前的工作。


4. ku
ku
可以用来搜寻整个网路上的 user ,不像 w who 只是针对 local host
查询. 而且 ku 提供让使用者建立搜寻特定使用者名单的功能。你可以建立一个档 information-file 以条列的方式存放你的朋友的资料,再建立一个档案
hosts-file
来指定搜寻的机器名称。 ku 的指令格式可由 ku -h 得到。


e.
网路指令
:

UNIX
提供网路的连接,使得你可以在各个不同的机器上做一些特殊的事情,如
你可以在系上的 iris 图形工作站上做图形的处理,在系上的 Sun 上读 News 甚至到学校的计中去找别系的同学 talk 。这些工作可以利用 UNIX 的网路指 令,在你的位子上连到各个不同的机器上工作。如此一来,即使你在寝室,也能 轻易的连至系上或计中来工作,不用像以前的人必须泡在冷冰冰的机房面。 这些网路的指令如下所述:

1. 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 。例如,在 ccsun7.csie.nctu.edu.tw 上头你的
username
ysjuang , 而你的 home 下面的 .rhost 有以下的一行
:

ccsun6.cc.nctu.edu.tw u8217529
则在 ccsun6.cc.nctu.edu.tw 机器上的 user u8217529 就可以用以下的方法来
执行 rsh 程式:

% rsh ccsun7.csie.nctu.edu.tw -l ysjuang cat mbox
ysjuang ccsun7.csie.nctu.edu.tw 上的 mbox 档案内容显示在
local host
ccsun6.cc.nctu.edu.tw
上。
而如果 .rhost 有这样的一行,则 ccsun6.cc.nctu.edu.tw 上的 user u8217529 将可以不用输入 password 而直接经由 rsh rlogin login
ccsun7.csie.nctu.edu.tw
来。
注意:

.rhost
是一个设定可以信任的人 login 的表格,因此如果设定不当将会让
不法之徒有可以乘机侵入系统的机会。 如果你阅读 man 5 rhosts ,将会 发现你可以在第一栏用 + 来取代任何 hostname ,第二栏用 + 来取代任何
username
如一般 user 喜欢偷懒利用 " + username " 来代替列一长串 hostname 但是这样将会使得即使有一台 PC 上跑 UNIX user 有与你相同的
username ,
也可以得到你的 trust 而侵入你的系统。这样容易造成系统
安全上的危险。因此本系禁止使用这样子的方式写你的 .rhost 档,如果 发现将予以停机直到你找中心的工作人员将其改正为止。 同理,如果你的 第二个栏位为 + ,如" hostname + " ,则你是允许在某一部机器上的"所有"
user
可以不用经由输入 password 来进入你的帐号,是壹种更危险的行为。
所以请自行小心。

2. telnet
telnet
是一个提供 user 经由网路连到 remote host

telnet
的 格式如下
:

telnet [ hostname | ip-address ] [ port ]

hostname
为一个像 ccsun1 或是 ccsun1.cc.nctu.edu.tw name address

ip-address
则为一个由四个小於 255 的数字组成的 ip address ,如
ccsun1 ip-address 140.113.17.173 ccsun1.cc.nctu.edu.tw ip-address 140.113.4.11 。你可以利用 telnet ccsun1 telnet 140.113.17.173 连到 ccsun1

port
为一些特殊的程式所提供给外界的沟通点,如资工系的 MUD server 便
提供一些 port user 由这些 port 进入 MUD 程式。详情请参阅 telnet(1) 的说明。


3. ftp
ftp
的意义是 File Transfer Program ,是一个很常应用在网路档案传输的
程式。ftp 的格式如下:

ftp [ hostname | ip-address ]
其中 hostname | ip-address 的意义跟 telnet 中的相同。
在进入 ftp 之後,如果与 remote host 连接上了,它将会询问你 username 与密码,如果输入对了就可以开始进行档案传输。 ftp 中有许多的命令,详细的使用方式请参考 ftp(1) ,这里仅列出较常 用的 cd , lcd , mkdir , put , mput , get , mget , binary , ascii ,
prompt , help
quit 的使用方式。


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 . 利用 ftp ,我们便可以在不同的机器上将所需要的资料做转移,某些特别的 机器更存放大量的资料以供各地的使用者抓取,本校较著名的 ftp server NCTUCCCA 与系上的 ftp.csie.nctu.edu.tw 。这些 ftp server 均有提 供一个 user 称为 anonymous ,一般的"外来客"可以利用这个 username 得该 server 的公共资料。不过 anonymous 在询问 password 时是要求使用
anonymous
的使用者输入其 email address,以往有许多台湾的使用者在使用
国外的 ftp server 时并没有按照人家的要求输入其 email address,而仅是 随便打一些字串,引起许多 internet user 和管理者的不满,对台湾的使用 者的风评变得很差,因此遵循各 ftp server 的使用规则也是一件相当重要的事。

f.
关於通讯用的指令
:

1. write
这个指令是提供使用者传送讯息给另一个使用者,使用方式
:
write username [tty]

2. talk/ytalk/cytalk/ctalk
UNIX
专用的交谈程式。会将萤幕分隔开为你的区域和交谈对象的区域,
同时也可和不同机器的使用者交谈。使用方式:

talk username[@host] [tty]

3. mesg
选择是否接受他人的 messege , 若为 messege no 则他人的 messege 将无法
传送给你,同时他也无法干扰你的工作。使用方法:

mesg [-n|-y]

4. mail/elm
在网路上的 email 程式,可经由此程式将信件 mail 给他人。使用方式
:

mail [username]
mail -f mailboxfile
如有信件,则直接键入 mail 可以读取你的
mail .

elm
提供较 mail 更为方便的介面,而且可做线上的 alias . 你可以进入
elm 使用上下左右键来选读取的信件,并可按 h 取得线上的 help 文件。 使用方式:

elm [usernmae]
elm -f mailboxfile

g.
编译器
( Compiler ):

Compiler
的用处在於将你所撰写的程式翻译成一个可执行档案。在资工系常
用的程式语言是 C , pascal , FORTRAN 等。你可以先写好一个 C Pascal FORTRAN 的原始程式档,再用这些 compiler 将其翻成可执行档。你可以 用这个方法来制造你自己的特殊指令。

1. cc/gcc (C Compiler)
/usr/bin/cc
/usr/local/bin/gcc
语法
: cc [ -o execfile ] source
gcc [ -o execfile ] source

execfile
是你所希望的执行档的名称,如果没有加上 -o 选项编译出来的可
执行档会以 a.out 做为档名。 source 为一个以 .c 做为结尾的 C 程式档。 请参阅 cc(1) 的说明。

2. pc (Pascal Compiler)
/usr/local/bin/pc
语法
: pc [ -o execfile ] source

execfile
是你所希望的执行档的名称,如果没有加上 -o 选项编译出来的可
执行档会以 a.out 做为档名。 source 为一个以 .p 做为结尾的 Pascal 式档。 请参阅 /net/home5/lang/man pc(1) 的说明。

3. f77 (Fortran Compiler)
/net/home5/lang/f77
语法
: f77 [ -o execfile ] source

execfile
是你所希望的执行档的名称,如果没有加上 -o 选项编译出来的可
执行档会以 a.out 做为档名。 source 为一个以 .p 做为结尾的 FORTRAN 式档。

h.
有关列印的指令
: 以下为印表所会用到的指令,在本系的印表机有 lp1 , lp2 ( 点矩阵印表机 )
lw , sp , ps , compaq (
雷射印表机 ),供使用者使用。


1. lpr
lpr
为用来将一个档案印至列表机的指令。
用法:
lpr -P[ printer ] file1 file2 file3 ....

lpr -P[ printer ] < file1
例子
:
lpr -Plp1 hello.c hello.lst hello.map
lpr -Plp1 < hello.c
前者以参数输入所要印出的档案内容,後者列印标准输入档案
( standard input ) 的内容,因已将 hello.c 转向到标准输入,故会印出 hello.c 的档案内容。

2. lpq
lpq
是用来观察 printer queue 上的 Jobs
用法:
lpq -P[ printer ]


3. lprm
lprm
是用来取消列印要求的指令。 通常我们有时会印错,或是误送非文字档
资料至 printer , 此时就必须利用 lprm 取消列印 request ,以免造成资源 的浪费。 用法:
lprm -P[ printer ] [ Jobs id | username ]

lprm
用来清除 printer queue 中的 Jobs , 如果你使用 Job Id 作为参数,则
它将此 Job printer queue 清除,如果你用 username作为参数,则它将此 queue 中所有 Owner 为此 username Jobs 清除。
i.
更改个人使用资料
:
1. passwd
passwd
是用来更改你的使用密码,用法为
:
passwd [ username ]
在使用 passwd 的时候,它会先问你的旧密码,然後询问两次要更改的密码,确定
无误後才将你的密码改掉。
2. chsh
chsh
是提供使用者更换 login shell 的指令,你可经由此更换自己使用的 shell
 

GNU
GNU
GNU's Not Unix的缩写。
它的目标是在UNIX系统基础上,建立一个可自由发布和可移植的完善的Unix类操作系统。因开始实施GNU项目时,当时还没有多少高质量的自由软件可供项目使用。所以,为GNU项目做出贡献的人们先从系统的应用软件和工具入手。它的系统核心是HURD,但是由于LINUX的提前出现,让许多人认为,HURD没有必要再开发下去,用LINUXGNU的核心就很理想了。

FSF
FSF
Free Software Foundation的缩写,即自由软件基金会
十几年前,世界级的顶尖程序员Richard Stallman提出了一个伟大的信念:计算机系统应该对用户开放,软件应该自由使用。在他的倡导下,掀起了开发自由软件的运动热潮。1984年,Richard Stallman的努力得到了麻省理工学院的正式支持。后来他就成立了自由软件基金会这个倡导自由软件的组织。
该组织的主要项目是GNU,一个自由发布和可移植的类UNIX系统。

CPL
GPL
General Public License的缩写,即通用公共许可证
这是为了能够规范自由软件,由自由软件基金会(FSF)提出,并制定成文的一种不同于传统的软件许可证。它的核心思想就是保证任何人可以共享和修改自由软件,有权取得、修得、修改和重新发布自由软件的源代码。这使得自由软件总的费用相当低廉,而且在使用Internet的情况下是免费的。
该条款还规定自由软件的衍生作品必须以GPL作为它重新发布的许可证。这一规定保证了自由软件及其衍生作品继续保持自由状态。也就是说防止了不法分子将自由软件更改后注册自己的版权。
而且通用公共许可证还容许销售自由软件。也就是说,自由软件本身是免费的,但销售公司可以从销售中收取一定的服务费用。这为公司介入自由软件事业敞开了大门。同时公司的介入弥补了自由软件的不足,对推动自由软件应用起了很大的作用。就象Red Hat公司在发布LINUX的过程中不断壮大,同时也大大促进了LINUX的发展。
正是这个条款的合理制订,使得自由软件事业得以全面发展。可以说,自由软件之所以有今天的成就,CPL功不可没。 A 帐户名称(Account Name 等同于登录标识、用户标识或用户名。是指派给 UNIX/Linux 系统上用户的名称。可以在系统上对多个用户设置唯一的帐户名称,每个用户具有不同的访问(权限)级别。在安装完 Linux 之后,帐户名称由超级用户(Superuser)或 root 操作员指派。

AfterStep
用户界面(窗口管理器)之一,AfterStep 使得 Linux 的外观很象 NeXTSTEP,而且还有些增强功能。要获取更多关于 AfterStep 的信息,请访问 www.afterstep.org。(另请参阅“Enlightenment”、“GNOME”、“KDE”和“X Window 系统”。)

Awk
AhoWeinberger Kernighan 一种编程语言,因其模式匹配语法而特别有用,通常用于数据检索和数据转换。一个 GNU 版本称为 Gawk

APM
(高级电源管理,Advanced Power Management 一种工业标准,它允许系统处理器和各个组件进入省电模式,包括挂起、睡眠和关机。APM 软件对于移动设备尤为重要,因为它节省了电池电量。 附加符号(Append Symbol 两个键盘字符 >(也就是 >>)。通常用它将命令的输出发送到文本文件,将数据附加到文件的尾部,而不是替换现有的内容。例如,ls -a >> output.txt 将当前目录列表发送到名为 output.txt 的文件,并将其添加到该文件的尾部。重复执行该命令会不断地将新数据添加到文件尾部。(另请参阅“管道符号”和“重定向符号”。) 归档文件(Archive)—含有多个文件的单个大型文件,通常对其进行压缩以节省存储空间。经常创建归档文件以方便计算机之间的传送。流行的归档格式包括 ARJTARZIP ZOO。它们都可以用来创建这样的归档文件。


myfriend2010 发表于:2007.10.15 11:18 ::分类: ( UNIX/LINUX ) ::阅读:(859次) :: 评论 (0)
切换风格
新闻聚合
博客日历
文章归档...
最新发表...
博客统计...
网站链接...