当前位置:文档之家› AIX基本命令

AIX基本命令

AIX 基本命令 2005.11



文件

文件用于操作系统中信息的所有输入和输出(I/O),标准化对软件和硬件的访问

常规文件

文本文件以 ASCII 方式存储,不能包含 NUL 字符

二进制文件包含可由计算机读取的信息

特殊文件

块文件和字符文件定义设备

FIFO文件也称为管道,由一个进程创建以临时地允许与另一个进程的通信,进程完成时,这些文件不再存在

目录文件

目录文件是一种独特的文件类型,它仅包含访问文件或其它目录所需要的信息

目录条目包含文件或子目录名,以及索引节点引用号(i 节点号),i 节点号包含用于定位与文件关联的所有散射数据块的地址,还记录有关文件的其它信息,包括修改和访问的时间、访问方式、链接数、文件所有者和文件类型

链接的类型

硬链接 允许从新文件名访问同一文件系统中的文件数据,当除去最后一个硬链接时,删除 i-node 号及其数据

符号链接 允许从新文件名访问其它文件系统中的文件。符号链接是一种包含路径名的特殊类型的文件

文件命名约定

文件名最长可为 255 个字符,并可包含字母、数字和下划线,目录遵循与文件相同的命名约定

操作系统区分大小写字母

避免使用字符:/ \ " ' * ; - ? [ ] ( ) ~ ! $ { } < > # @ & |

如果文件名以点 (.) 开始,则正常目录列表时隐藏该文件名

文件路径名

文件系统中的所有路径都发源于 / 目录,路径名的长度不能超过 1023 个字符

通配符和元字符模式匹配

(*) 匹配任何序列或字符串,包括没有字符

(?) 匹配任何单个字符

([]) 匹配括号中特定字符

(-) 指定范围 (!) 非

目录缩写

. 当前工作目录

.. 当前工作目录的上一层目录(父目录)

$HOME 当前用户的主目录

标准输入、标准输出和标准错误

stdin 文件描述符 0 标准输入 (键盘)

stdout 文件描述符 1 标准输出 (显示器)

stderr 文件描述符 2 标准错误(诊断)输出 (显示器)

重定向标准输出

> filename 指定的文件用作标准输出

>> filename 重定向输出附加到指定文件末尾

>& 将输出到某个文件描述符的内容转至其它的文件描述符,相当于 "The same as"

例:command > standard 2> error 9> data 将标准输出、标准错误重定向,并在文件描述符 9 上构建数据文件

tsh.sh 2>&1 将标准错误输出转至标准输出

重定向标准输入

< filename 指定的文件用作标准输入

<< eofstring 使用直接插入输入(Here)文档

eofstring 是不包含模

式匹配字符的字符串,shell 将后继行视为 command 的标准输入(对内容执行变量替换和命令替换),直到发现仅由 eofstring 组成的行

如果有连字符(-)紧跟在 << 重定向字符后,则从每行中舍去前导制表符

例:cat <<- xyz
将在显示器上显示此消息,并且前导制表符已除去。
xyz

管道(|)

将一个命令的标准输出用作另一个命令的标准输入

/dev/null

发送到 /dev/null 的任何数据将被废弃

例:myprog < myscript > /dev/null

命令的几点提示:

; 分号分隔命令,两个命令可在同一行上输入

\ 反斜杠可以使命令跨行

-- 结束标志,后面跟的是参数

参数或选项是数值时的数字范围 /usr/include/sys/limits.h (INT_MAX,INT_MIN)

进程的几点提示:

实际运行在计算机上的程序或命令称为进程

进程存在于“父子”层次结构中

系统在它启动时将(PID)进程标识号指定给每个进程

后台启动进程(&): $ CommandName&

守护进程是无人照管后台进程,任何时候都可用

zombie进程是已杀死或退出的进程,不具有分配给它的其它系统空间,它不在执行但仍在进程表中存在,真到父进程死



alias
创建或显示命令别名

name=string 定义别名,如果string包含空格,用引号圈起

at
设置定时作业

-l 报告已调度的作业 (atq)

-o 按调度顺序列出作业

-t Date 提交作业在指定的时间运行

[[CC]YY]MMDDhhmm[.SS]

-r Job... 删除由 at 或 batch 命令调度的 Job (atrm)

-i 指定交互式删除

-u User 删除指定用户的所有作业

-q Queue 指定在哪个队列中调度要提交作业

a(at) b(batch)

-m 发送给用户有关执行命令的消息

Day 指定的月份名称或具体日期,或星期几

now , noon , midnight , am/pm (默认24小时制时钟)

+/next ( minute[s] , hour[s] , day[s] , week[s] , month[s] , year[s] )

today(晚于当前时间缺省) , tomorrow(早于当前时间缺省)

例:echo "ksh shellfile" | at 3:00 pm January 24
echo "ksh shellfile" | at now tomorrow
echo "ksh shellfile" | at now + 2 days
echo "ksh shellfile" | at now next week

相关文件:

/var/adm/cron/at.allow 其中列出的用户可以使用 at 命令

/var/adm/cron/at.deny 其中列出的用户不能使用 at 命令

/var/adm/cron/FIFO 管道文件,当用 crontab 或 at 命令提交新作业时,它将消息发送到 cron 守护进程

/var/spool/cron/atjobs 包含 at 的假脱机区域目录

banner
将 ASCII 字符以大型字母的形式写至标准输出

batch
当系统负载较轻时允许运行作业


关于已调度的命令的所有输出以邮件发送给用户,除非您重定向该输出

执行命令时保留环境变量并保留当前目录,不保留打开文件描述符、陷阱和优先级

batch 命令等同于输入 at -q b -m now 命令

例: batch <longjob
!

bc
为任意精度算术语言提供解释器

内部寄存器

scale 计算表达式小数位的全局值 0 <= scale <= {BC_SCALE_MAX}
ibase 输入数字的基数 2 <= ibase <= 16
obase 输出数字的基数 2 <= obase = {BC_BASE_MAX}


例:echo 'scale=10; 104348/33215' | bc PI的近似值

标识符

可识别的标识符有三种:普通标识符、数组[]标识符、函数()标识符

所有三种类型包含单个小写字母

运算符

( ++, -- ) ( - ) ( ^ ) ( *, /, % ) ( +, - )
( =, +=, -=, *=, /=, ^= ) ( ==, <=, >=, !=, <, > )

bg/fg
在后台/前台运行作业

JobID ( %+ , %- , %job-number )

%String 以特定字符串开头的作业

%?String 包含特定字符串的作业

PID 进程号指定的作业

取消前台进程:Ctrl-C
停止前台进程:Ctrl-Z

cal
显示日历

[[Month]Year] 指定年或月的日历

cat
显示文件

-n 行号显示,从 1 开始编号

-b 省略来自空行的行号

-v 将非打印字符显示为可视字符,除了跳格符、换行符和换页符

ASCII 控制字符(八进制 000-037)打印成 ^n,其中 n 对应八进制范围 100-137的 ASCII 字符
DEL 字符(八进制 0177)则打印成 ^?
其它非打印字符打印成 M-x,其中 x 是最低七位的 ASCII 字符

-t 跳格符打印成 ^I 而换页符打印成 ^L

-r/-S 以一个空行来替代多个连续的空行

-s/-q 无法找到输入文件时不显示消息

例:常见错误

cat f1 f2 f3 >> f1 (cat: 0652-055 f1: Source is same as Target. Skipping...)

cat f1 f2 f3 > f1 (实际上擦除f1的内容,然后将f2、f3的内容附加到f1)

capture
允许终端屏幕被捕获至文件(仿真 VT100)

屏幕捕获 Ctrl-P ($SCREENDUMP 捕获键为3位数八进制数 例:SCREENDUMP=014 Ctrl-L)

停止捕获 Ctrl-D / exit

-a 将屏幕内容附加(默认覆盖)至指定的文件或 screen.out 文件

cd
更改当前目录

[dira dirb] 把当前工作目录中的字符串 dira 用 dirb 替换

环境变量 $CDPATH 用于更改目录时的搜索路径

chgrp
更改文件或目录的组所有权

chmod
更改文件方式

r(read) 查看文件中的数据/可以列出目录的内容
--没有“read”标志,目录内的文件系统对象是不可查看的,但是知道磁盘上对象的完整路径,就仍然可以访问目录内的对象

w(write) 修改文件以及删除/可以在目

录中创建文件

x(execute) 运行程序/可以进入该目录并访问内部的任何子目录
--没有“execute”标志,目录内的文件系统对象是不可访问的

file:s suid 以可执行文件的所有者标识运行,而不是以启动程序的用户标识运行

file:s sgid 以可执行文件的组标识运行,而不是以启动程序的用户的组标识运行

file:t save-text 程序完成后在内存中保留备份,不用每次从磁盘加载到内存

dir:s sgid 使得在该目录下创建的任何文件及目录属于该目录所拥有的组

dir:t sticky 使得只有该目录的所有者、文件的所有者或 root 用户才能够删除或重命名目录中文件

-f 禁止除用法消息之外的所有错误消息

-h 不跟随符号链接,也禁止更改遇到的符号链接 (不能在符号链接上设置方式位)

-R 递归目录,跟随符号连接但不进一步遍历目录

chown
更改与文件关联的所有者或组

Owner[:Group] 用户:组

-f 禁止除用法消息之外的所有错误消息

-h 不跟随符号链接,更改所遇到的符号链接

-R 递归目录,跟随符号链接 (当链接指向目录时,不进一步遍历目录)

-H 符号链接在命令行上指定,跟随符号连接并遍历文件层次结构

-L 符号链接在命令行上指定或在遍历文件层次结构期间遇到,跟随符号连接并遍历文件层次结构

-P 符号链接在命令行上指定或在遍历文件层次结构期间遇到,跟随符号连接但不遍历文件层次结构

clear
清除屏幕

cmp
比较两个文件

-l 对每个不同,显示十进制的字节数和八进制的不同字节

comm
显示或拒绝两个已排序的文件的公共的行

-1 禁止第一栏 (只在 File1 中的行)

-2 禁止第二栏 (只在 File2 中的行)

-3 禁止第三栏 (既在 File1,又在 File2 中的行)

compress
压缩数据

利用自适应的 Lempel-Zev 编码

压缩后文件名加后缀 .Z 代替原文件,压缩文件保留与原文件相同的所有权、方式和修改时间

-d 解压数据,与 uncompress 完全一样

-f/-F 如果 File.Z 存在则强制覆盖

-v 显示压缩百分比

-c 写入标准输出,不改变文件

cp
复制文件

如果目标文件存在,覆盖其内容,但相关的方式、所有者和组不改变

-f 如果目标文件不能被写操作打开的话,将在复制之前移去目标文件

-i 提示将被覆盖的文件名

-r 递归复制

-R 递归复制 (特殊文件类型,将被重新创建而非复制)

-h 复制符号链接 (缺省是跟随符号链接)

-p 复制源文件以下特征(最后修改数据和最后访问的时间、用户标识和组标识、文件许可位和 S_ISUID 和 S_ISGID 位、访问控制

列表 ACL)

cpio
把文件拷贝进出归档存储器及目录

-o 从标准输入中读出文件路径名并拷贝到标准输出中

-i 从标准输入中读入一个由 cpio 创建的归档,从中拷贝和 Pattern... 参数相匹配的文件到当前目录树中

-p 从标准输入中读入文件路径名并且把这些文件拷贝到指定的目录中

注:拷贝特殊文件需要有 root 用户权力

t 仅显示归档的目录,不进行文件拷贝

v 列出文件名

f 拷贝不匹配 Pattern 的文件

u 无条件拷贝,覆盖原有文件

l 链接文件而不是拷贝 (与 cpio -p 一起使用)

r 交互式重命名文件 (不改变文件名输入单个句点,不拷贝文件按 键)

d 创建需要的目录

m 保留先前的文件修改时间,目录除外

a 保留先前的文件访问时间

B 使用 512 字节的块输入输出

CValue 指定 512 字节的倍数个字节的块输入输出

例:cpio -ov /dev/rfd0 拷贝文件到磁盘上(磁盘必须已经格式化,但不必包含一个文件系统或已被安装)

cpio -idmv "*.c" "*.o"
find . -print | cpio -pdl /home/jim/newdir 复制当前的目录树,生成链接

crontab
提交、编辑、列出或除去 cron 作业

一个cron作业是一个命令,其运行是由cron守护程序在规则的调度间隔执行的

作业从HOME目录中启动,缺省环境:HOME,LOGNAME,SHELL=/usr/bin/sh,PATH=/usr/bin

-e UserName 编辑用户的 crontab 文件的拷贝

minute hour day_of_month month weekday command

指定一个数(5) 包含的范围(2-5) 数字列表(1,31) 所有允许值(*)

-l UserName 列出用户的 crontab 文件

-r UserName 从 crontab 目录除去用户的 crontab 文件

-v UserName 列出用户 cron 作业的状态

相关文件:

/var/adm/cron/cron.allow 指定用户列表,允许访问 crontab 命令

/var/adm/cron/cron.deny 指定用户列表,不被允许访问 crontab 命令

/var/adm/cron/FIFO 作业的提交是由 crontab 或 at 命令完成时,发送消息到 cron 守护进程的命名管道

/var/spool/cron/crontabs 指定 crontab 缓冲池区域

csplit
由上下文分割文本文件

-fPrefix 指定前缀,缺省为xx

-nNumber 改变十进制号码位数,用于创建文件名,缺省的是两个十进制位或 xx00 . xx99

-s 消除字符计数的显示

Argument... 参数,期望分割的行号或

/Pattern/ 创建文件从,当前行开始直到指定模式
+ Number 将指定的行号从以前的匹配模式行前移
- Number 将指定的行号从以前的匹配模式行后移
%Pattern% 指定模式

的行成为当前行
{Number} 重复指定次数的以前选项

例:csplit orginal.txt 11 72 98

cut
从行中选定

-f List 指定字段的列表

-d Character 指定字符作为定界符 (缺省为制表符)

-s 取消不包含定界符的行

-c List 指定字符位置

-b List 指定字节位置

-n 取消分割多字节字符

例:cut -f 1-2,5 -d : /etc/passwd

date
显示或者设置日期或时间

注:当系统正有一个以上的用户在运行时请勿更改日期

mmddHHMM[[YY]yy] 月、日、小时、分钟、世纪、年份

-a [ + | - ]sss[.fff ] 调整相对时间 sss.fff 秒(fff 代表秒片断)

-n 不在时钟同步的所有机器上设置全局时间

-u 按照全球标准时间(CUT)显示或者设置时间

+ 输出时间格式

%Y 年份_xxxx %m 月份_01-12 %d 日期_01-31 %H 小时_00-23 %M 分钟_00-59 %S 秒_00-59
%u 周日_1-7 %W 周数_00-53 %j 日期_001-366 %Z 时区

例:date 123123591999 设置时间为1999年12月31日23点39分

df
报告文件系统的空间信息

-k 以 1024 字节块为单位 (默认以512字节块为单位)

-m 以 MB 块为单位

-g 以 GB 块为单位

-v 显示指定文件系统的所有信息

diff
比较文本文件

( 受影响行 File1 < , File2 > )
( 多行 File1/- File2/+ ,更改行 ! )

-C lines 比较指定行数的上下文

-c 比较三行上下文

-r 递归到遇到的公共子目录

-s 仅报告相同的文件名

-i 忽略字母大小写

-b 将每行末尾当作单个新行标记处理(忽略新行字符前的空格字符)

-w 忽略所有空格和制表符

dircmp
比较两个目录和公共文件的内容

-d 显示公共文件中的不同内容

du
显示用于文件的块的数量

-a 显示每个指定文件的块数量,或者为目录中每个文件显示各自的块数量

-s 显示每个指定文件的块数量,或者为目录中所有文件显示总的的块数量

-k 用 1024 字节单位计算,默认为 512 字节单位

-m 用 MB 单位计算

-g 用 GB 单位计算

-H 在命令行指定了符号链接,统计链接引用的文件或文件层次结构的大小

-L 在命令行指定了符号链接或者在文件层次结构的遍历中遇到符号链接,统计链接引用的文件或文件层次结构的大小

-l 在多链接之间均匀地分配块

-x 只评估与File驻留在相同设备上的文件

echo
将(多个)字符串写到标准输出

将对字符串执行变量替换和命令替换

转义约定:

\a 警告字符
\b 退格符
\c 所有跟在 \c 序列后的字符都被忽略,包括换行字符
\f 走纸字符
\n 换行字符
\r 回车字符
\t 制表符

\v 垂直制表符
\\ 反斜线符号
\0数字 用三位八进制数字表示ASCII字符

注:比较反斜线是如何在命令中首先由 shell 然后又由 echo 命令缩减的

输入命令 echo hi\\\\there
shell扩展 echo hi\\there
处理echo hi\there

输入命令 echo 'hi\\\\there'
shell扩展 echo 'hi\\\\there'
处理echo hi\\there

输入命令 echo "hi\\\\there"
shell扩展 echo "hi\\there"
处理echo hi\there

env
显示当前环境或者为命令的执行设置环境

-i 忽略继承的环境,在name=value环境下,调用命令

例:env PS1 显示环境变量PS1

expr
表达式求值

Expression 参数 (用空格隔开每个项)

Exp1 \| Exp2 返回 Exp1如果它不是 0 或空值,否则返回 Expr2
Exp1 \& Exp2 返回 Exp1如果两个表达式都不是是 0 或空值,否则返回一个 0 值
Exp1 { =, \>, \>=, \<, \<=, != } Exp2 比较结果为真返回1,比较结果为假返回0
Exp1 {+, - } Exp2 整数值的加减
Exp1 { \*, /, % } Exp2 整数值乘、除或者取模
Exp1 : Exp2 将 Exp1 字符串与 Exp2 正则表达式模式进行比较,模式固定到字符串的开始处,返回匹配的字符个数(失败返回 0)。如果模式包含\( Expression \),返回包含实际匹配的字符串

match Str1 Str2 与 Exp1 : Exp2 相同
length Str1 返回 Str1 的长度
index Str1 Str2 返回 Str1 中包含 Str2 中任意字符的第一个位置
substr Str1 StartPosition Length 返回以 StartPosition 的字符开始,长度 Length 的子字符串

例:COUNT=`expr $COUNT + 1` COUNT自加1

FLAG=`expr "x$FLAG" : "x-*\(.*\)"` 避免变量设置成 - (连字符),语法错误

fc
显示或重新执行历史命令

first[last] 指定命令编号范围

-e Editor(vi) 编辑命令,退出编辑器时执行

-l 列出历史命令 (ksh内置命令 history)

-n 隐藏命令编号

-r 逆转命令顺序

-s 重新执行一个命令 (ksh内置命令 r)

Old=New 在重新执行的命令中,进行字符串替换

相关文件:

$HOME/.sh_history 命令历史文件,保存最后128个命令文本 (环境变量:HISTFILE,HISTSIZE,FCEDIT)

file
确定文件类型

检查 ASCII 码格式文件前 1024 个字节确定文件类型,并尝试区分二进制数据文件和包含扩展字符的文本文件

-d 缺省系统测试

-h 不跟随符号链接

-c 检查指定的 magic 文件(缺省:/etc/magic),有无格式错误

-m MagicFile 指定 magic 文件的文件名

find
查找文件

-H 跟随命令行上的符号链接

-L 跟随每个符号链接

() 表达式组(对于 shell 需要反斜杠转义)

(

! 非 , [ -a ] 与 , -o 或 )

-name File 文件名称匹配,可在引号内使用通配符

-prune 不递归目录

-perm [ - ] OctalNumber | Mode 文件许可匹配,-(连字符)表示掩码匹配

-type 文件类型匹配 ( b 块特殊文件 , c 字符特殊文件 , d 目录 , f 无格式文件 , l 符号链接 , p FIFO文件(管道) , s 套接字 )

-size n[c] 文件长( 512字节块 或 字节 )匹配

-newer File 修改时间比 File 所指文件新的匹配

-mtime n 修改日期匹配

-ctime n i节点修改日期匹配

-atime n 访问日期匹配

-user User 指定的用户匹配

-group Group 指定的组匹配

-nouser 不在 /etc/passwd 中的用户匹配

-nogroup 不在 /etc/group 中的组匹配

-follow 跟随符号链接

-depth 先列目录内容再列目录本身

-cpio Device 将当前的文件写入到在 cpio 命令格式中的指定设备

-inum n 索引节点匹配

-links n 文件链接数目匹配

-print 显示当前路径名

-ls 显示当前路径名与其关联信息 (ls -lis)

-exec Command 命令,参数 {} (花括号) 将被路径名所替代,命令的末尾必须加上";"(引号分号)或 \;(反斜杠转义分号)

-ok Command 和 -exec 一样,但询问是否启动命令

-fstype 类型 指定文件系统类型(jfs , nfs)

-xdev 不在与 Path 不同的文件系统中遍历

注:变量 n 为十进制的整数,+n(超过 n)、 -n(少于 n)或者 n(等于 n)

finger
显示当前登录到主机的用户信息

User 指定一个本地用户标识

@Host 指定远程主机

-i 给出空闲时间的一个快速列表

-l 给出一个长格式的列表

flcopy
从软盘到软盘拷贝

-f Device 指定软盘设备 (缺省 /dev/rfd0)

-h 将当前目录中 floppy 文件复制到软盘

-r 将软盘复制成当前目录的 floppy 文件

format
格式化软盘或者可读/写介质磁盘

3.5 英寸 1.44 MB 包含 80*2 个磁道,每磁道 18 个扇区 (所有软盘类型的扇区大小都是 512 个字节)

-d Device 指定软盘设备 (缺省 /dev/rfd0)

-f 不检查坏磁道而直接格式化软盘

例:format -d /dev/romd0 格式化可读/写的光盘

fuser
使用文件或文件结构识别进程

每个进程号后面跟随字母指示进程如何使用文件

c 将此文件作为当前目录使用
e 将此文件作为程序的可执行对象使用
r 将此文件作为根目录使用
s 将此文件作为共享库(或其它可装载对象)使用

-f 仅对文件的打开实例报告

-k 将 SIGKILL 信号发送到每个本地进程

-u 进程号后显示登录名

-c 包含File的文件系统中关于任何打开的文件的报告

-V 提供详细输出

grep

索文件中的模式

行被限制为 2048 个字节,输入行不应包含空字符

-i/-y 忽略字母的大小写

-w 执行单词搜索

-x 精确匹配而不含其它字符的行

-p[Separator] 匹配整个段落,Separator指定段落分隔符,缺省为空白行 (段落长度被限制为 5000 个字符)

-v 显示不匹配的行

-e 指定多个搜索模式

-n 在每行之前放置文件中的行号

-h 指定多个文件时,禁止附加文件名

-l 仅列出包含匹配行的文件名

-f PatternFile 指定包含搜索模式的文件

-E 指定模式为扩展的正则表达式(ERE)

-F 指定模式为字符串而不是正则表达式

-c 仅显示匹配行数

-s 禁止文件不存在或不可读取的错误信息

-q 禁止所有写入到标准输出的操作

groups
显示指定用户的所属组

head
显示文件的前几行或前几个字节

-n Number 指定行 (-Count)

-c End 指定字节

id
显示指定用户的系统标识

jobs
显示当前 shell 环境中已启动的作业状态 (ksh内置命令)

%+ 最近的作业 ( %% )

%- 次最近作业

%job-number 指定作业号

-l 提供作业的PID

join
连接两个文件的数据字段

调用命令之前,File1 和 File2 都必须以 sort -b 排序

-1 Field 用 File1 中的 Field 指定的字段来连接

-2 Field 用 File2 中的 Field 指定的字段来连接

-a FileNumber 指定的文件的每一行产生一个输出行

-v FileNumber 指定的文件的每一行产生一个输出行(连接字段不匹配)

-t Character 指定的字符作为输入和输出的字段分隔符

-o List 指定的字段构造一个输出行,FileNumber.Field

-e String 指定的字符串来代替空输出字段

kill
发送一个信号到正在运行的进程

-s {SignalName | SignalNumber} 指定发送信号,如 SIGKILL 或 9

SignalNumber 为 0 时检查 PID 的有效性

ProcessID 指定一个十进制整数代表一个要被发送信号的进程或进程组

PID > 0 发送信号到 PID 进程

PID = 0 发送信号到与发送者进程同一进程组的所有进程,不发送信号到 PID 为 0 或 1 的进程

PID = -1 发送信号到所有由发送者的有效用户所有的进程

-l 列出所支持的信号名字

相关文件:

/usr/include/sys/signal.h 指定信号的名字

例:kill -9 -1 停止用户拥有的进程,包括在其他工作站上启动的和属于其他进程组的进程

last
显示关于先前登录与注销的信息

Name 指定用户的信息

Terminal 指定终端的信息,例如指定 tty0 或 0

-n 指定在列表中要显示的行数

-T [[CC]YY]MMDDhhmm[.SS] 显示给定的时间值中登录的用户

-f FileName 指定一个来

读登录或注销的备用文件,默认 /var/adm/wtmp 文件

ln
链接文件

-f 替换已经存在的目的路径

-s 创建符号链接 (当对符号链接执行打开操作,会使用链接引用的文件)

例:ln manual/* . (将 manual 目录中的所有文件链接到当前目录中)

lock
用密码锁定终端

-Timeout 超时间隔,缺省15分钟

login
启动用户会话

login命令设置 LOGIN 和 LOGNAME 环境变量

/etc/nologin 文件存在,禁止除 root 以外的用户登录,并显示nologin文件内容 (系统重引导时,/etc/nologin文件被除去)

$HOME/.hushlogin 文件存在,登录时不显示 last unsucessful login 和 last login

相关文件:

/etc/environment 用户环境配置信息

/etc/utmp 跟踪用户登录

/var/adm/wtmp 记帐用途

/etc/security/login.cfg 包含端口同义词

/etc/security/failedlogin 失败登录信息 (未被承认的用户名记 UNKNOWN_USER)

/etc/security/lastlog 最近一次登录信息

logins
显示关于用户和系统登陆信息

-s 系统用户 -u 普通用户

-g Group 显示属于组的用户 -l Loginname 列用户

-m 显示用户所属全部的组

-x 显示用户扩展信息 (主目录,登陆shell,密码相关信息)

-p 列出所有未设密码的用户

-t 使用用户名排序

logname
显示登陆用户标识

logout
停止一个端口上的所有进程

ls
显示目录内容

-A 列出所有条目 (不包含 . 和 ..)

-a 列出目录中所有项 (包含 . 和 ..)

-R 递归列出所有子目录

-d 仅显示指定目录信息

-l 显示方式、链接数目、所有者、组、大小(按字节)和每个文件最近一次修改时间

d 目录
b 块特殊文件
c 字符特殊文件
l 符号链接
p 先进先出(FIFO)特殊文件
s 本地套接字
- 普通文件

r 读
w 写(编辑)
x 执行(搜索)
- 没有授予相应的许可权

set-group-ID/set-user-ID=s/S , Sticky=t/T

-N 不跟随符号链接 ( 用 -l 参数时缺省 )

-L 列出链接引用的文件或目录内容

-H 显示命令行上链接所引用的文件的信息和类型,但显示链接本身的名称

-t 按照最近修改时间(最近的最先)排序

-u 按照最近访问时间排序

-c 使用索引节点最近一次修改的时间

-r 逆序输出

-F 提示 ( 目录 / , 可执行文件 * , 套接字文件 = , FIFO文件 | , 符号链接文件 @ )

-p 提示 ( 目录 / )

-i 显示索引节点值

-s 按照千字节(包括间接块)给出每一项的大小

-q 将文件名中的非打印字符显示成 ?(问号)

-b 以八进制 ( \nnn) 表示法显示非

打印字符

-e 显示扩展安全性信息 (+/- 表示文件有/无扩展安全性信息)

lscfg
显示系统配置信息、诊断信息、重要产品数据(VPD)信息

VPD对象是sys0对象的子设备

+/- 从资源列表中添加或删除

* 不可用的诊断支持

-p 特定平台的设备信息

-v 显示VPD对象类中的信息

-l name 显示name设备的信息

例:lscfg -vpl ent\* 列所有以太网适配器

lscons
显示当前控制台设备的名称

-b 下次启动系统时选定的系统控制台的全路径名

-d 当前启动系统时选定的系统控制台的全路径名

-a 显示控制台设备、控制台日志记录和标记属性

lsdisp
列出系统中的可用显示器

lsgroup
显示组属性

-a List 显示指定的属性

group... 显示指定的组 ( "ALL" 全部组 )

lslpp
显示已安装文件集或文件集更新的信息

-l/-L 显示文件集的名称、最新级别、状态和描述

-h 显示文件集的安装和更新历史记录信息

-d 显示从属于指定软件的文件集 (将指定软件作为先决条件、并列必需条件、条件必需条件或已安装必需条件的文件集)

-f 显示在安装文件集期间添加到系统中的文件名

-w 列出拥有此文件的文件集

man
显示有关命令的信息

mkdir
创建一个或多个新的目录

-m Mode 设置目录的许可位

-p 创建丢失中间路径名称目录

more
分屏显示文件内容

-c 禁止屏幕滚动

-i 不区分大小写搜索模式。

-s 以一个空行来替代多个连续的空行

-v 抑制非打印字符的图形翻译

-z 图形显示制表符 ^I,退格符 ^H,回车符 ^M

-p Subcommand 子命令 ( K代表可选的的整数 )

h 子命令的帮助
v 启动编辑器
r 或 ^L 刷新显示
R 刷新显示并删除缓冲的输入

[K](Spacebar) 或 [K](Enter) 向前移动一屏/一行或 K 行
[K]f 或 [K]^F 向前移动一整屏或 K 行
[K]b 或 [K]^B 向后移动一整屏或 K 行
[K]d 或 [K]^D 向前移动半屏或 K 行
[K]u 或 [K]^U 向后移动半屏或 K 行
[K]j 向前移动 K 行
[K]k 向后移动 K 行

[K]g 移动到文件头或 K 指定行号
[K]G 移动到文件最后一行或 K 指定行号
[K]% 移动到整个文件的百分之 K 处

ma-z 用指定字符标记当前位置
'a-z 移动到指定字符标记位置
'' 移动到最后超过一页的移动位置或文件的开头

[K]/pattern 向前搜索指定模式
[K]/!pattern 向前搜索不包含指定模式的行
[K]?pattern 向后搜索指定模式
[K]?!pattern 向后搜索不包含指定模式的行
[K]n 重复最后一

次的搜索

:a 列出 more 命令行中指定的文件
:f 或 ^G 或 = 显示有关当前文件的信息

:e[File] 或 E[File] 检查指定的文件
[K]:n 或 [K]N 检查下一个文件
[K]:p 或 [K]P 检查前一个文件

:!command 或 !command 在新 shell 中启动命令

:q 或 q 或 Q 退出

mv
移动(重命名)文件

-f 在覆盖没有写权限设置的文件时不提示

-i 移动之前进行提示

mvdir
移动(重命名)目录

nice
设置进程的初始优先级

优先级范围是 0 到 39,0 是最高的优先级

-n Increment 调整的数值 (缺省递增值 10)

nl
计算文件中行号

每个逻辑页有头(\:\:\:)、主体(\:\:)和页脚(\:)节

-b Type 选择主体节的行来计算

a 计算所有行
t 不计算空行或包含任何非图形符号如包含 tab 的行(缺省)
n 不计算任何行
pPattern 只计算那些被 Pattern 变量指定的行

-i Number 行号增加指定的数目,缺省为 1

-l Number 指定的空行数计一次数

-n Format 行号格式

ln 左对齐,前导零不计
rn 右对齐,前导零不计(缺省)
rz 右对齐,前导零保留

-s Separator 用字符将文本和行号分隔开,缺省为制表符

-v Number 设置初始行号

-w Number 指定行号中字符的数量

nohup
不挂断地运行命令(忽略 SIGHUP 信号)

nohup Command [ Arg ... ] [ & ]

无论是否重定向,输出附加到当前目录的 nohup.out 或 $HOME/nohup.out

od
以指定格式显示文件

-A AddressBase 指定左侧偏移底数

d 十进制 o 八进制(默认) x 十六进制 n 没有显示

-j Skip 输出前跳跃过由 Skip 变量给定的字节数 ( 缺省为十进制,前缀 0x 为十六进制,前缀 0 为八进制,可后跟字符 b,k,或者 m )

-N Count 不超过指定的输入字节数

-t TypeString 指定输出类型

a 显示字节为字符
c 显示字节为字符
\ 反斜杠 \a 提示符 \b 退格符 \f 换页 \n 换行字符 \0 空 \r 回车符 \t 制表符 \v 垂直制表符
d 显示字节为有符号十进制 ( C,I,L,S 附加到 d ,表示适用于 char,int(默认),long,short )
o 显示字节为八进制
u 显示字节为无符号的十进制
x 显示字节为无符号的十六进制
f 显示字节为浮点 ( F,D,L 附加到 f ,表示适用于 float,double(默认),long double )

paste
从多个文件中连接行

-d List 指定定界符(缺省是制表符),若有多个字符将被循环重复使用

\n 换行符 \t 制表符 \\ 反斜杠 \0 空字符串(不是空字符)

-s 串行合并

passwd
更改指定用户密码

注:默认只使用

密码的头八个字符 (支持7位字符)

-f 更改/etc/passwd中的fullname

-s 更改登录的shell

相关文件:

/etc/passwd 包含ID、用户名、主目录、登录shell等信息

/etc/security/passwd 包含加密的密码和安全性信息

ps
显示进程的当前状态

-A 显示所有进程信息

-k 显示内核进程信息

-e 显示除内核进程以外所有进程信息

-d 将关于所有进程(除会话导带)的信息写到标准输出

-a 将关于所有进程(除了会话导带和与终端无关的进程)的信息写到标准输出

-m 列出每个内核线程

-f 生成一个完整列表

-l 生成一长列表

-p Plist 指定进程号的进程信息

-t Tlist 指定工作站的进程信息

-u/-U Ulist 指定用户标识号或登录名的进程信息

-g/-G Glist 指定进程组的进程信息

eww 显示环境以及传递给命令的参数 (可指定PID查看)

pwd
显示工作目录的全路径名称

-P 显示的绝对路径 (不使用符号链接类型的文件的名称)

renice
改变运行进程的优先级

-n Increment 调整的数值

-p 无符号整数进程标识 (缺省)

-u 用户名称或用数字用户标识

-g 无符号整数进程组标识

rm
除去(解链)文件或目录

删除文件必须有包含文件的目录的写许可权 (没有文件的写许可权,将要求确认)

-R/-r 递归删除

-f 删除文件时没有写许权前不提示 (文件不存在时,不显示错误消息或返回错误状态)

-i 删除每个文件前提示

-e 文件被删除后显示消息

rmdir
除去目录(目录必须为空)

-p Directory 沿着 Directory 除去所有目录

script
制作终端对话期的 typescript

-a 将 typescript 附加到指定的文件或 typescript 文件

sleep
执行暂挂一段时间

Seconds 暂挂秒数

sort
排序文件

-k KeyDefinition 指定排序关键字

[FStart[.CStart]] [Modifier] [,[FEnd [.CEnd]][Modifier]]

FStart 开始字段 CStart 列开头字符 (缺省行开头,第一列)

FEnd 结束字段 CEnd 列结束字符 (缺省行结束,最后一列)

Modifier 的值仅应用于它们连接的字段定义( b、d、f、i、n、r )

[+[FSkip1] [.CSkip1] [Modifier]] [-[FSkip2] [.CSkip2] [Modifier]] (废弃版本)

+FSkip1 跳过的字段 +CSkip 跳过的列数 (缺省零)

-FSkip 跳过的字段 -CSkip 跳过的列数 (缺省零)

-t Character 指定字段分隔符 (缺省字段分隔符是由一个或多个连续空格字符组成)

-n 对数字字段排序 (可包含前导空格、可选减号、十进制数字、千分位分隔符和可选基数符)

-b 忽略字段的前导空格和制表符 (缺省字段分隔符中的空格符将

作为后继字段的内容)

-i 比较中忽略所有非打印字符

-f 比较前将所有小写字母改成大写字母

-r 反向排序

-u 相同行唯一

-c 检查排序,排序不正确,返回一个非零值

-o OutFile 指定输出文件,输出文件可与输入文件相同

-m 合并多个文件,假设每个文件已经排序

-A 使用 ASCII 整理顺序排序

-d 使用字典顺序排序,仅考虑字母、数字和空格

-T Directory 指定临时文件目录 (/var/tmp , /usr/tmp , /tmp)

-y[Kilobytes] 存储量显著地影响性能 (-y0 最小存储 -y 最大存储)

-z RecordSize 行缓冲,防止出现异常终止

例:从第三字段的第二非空格列开始至第三字段结束,逆向排序

sort -k 3.2b,3r (sort +2.1b -3r)

split
将文件分割成几段

-a SuffixLength 指定成输出文件后缀部分的字母数

-b Number[k,m] 指定每个文件的字节数

-l LineCount 指定每个输出文件的行数,缺省值是 1000 行

stty
设置、复位和报告工作站参数

-a 显示所有选项设置

例:stty erase \^H 修改控制指定,控制字符由 \^ 后跟单一字符组成

stty -echo 关闭回送信号

stty -a < /dev/tty2 显示终端tty2的设置

su
更改与会话关联的用户标识

- 重设环境,当前环境中无任何东西会传播到新shell中

[name] 用户标识,默认root

相关文件:

/var/adm/sulog su命令执行日志 (文件中 - 减号表示登录失败)

例: su - 切换到root用户

su root "-c /usr/sbin/backup -9 -u" 用户执行backup命令,然后返回原shell

sum
显示文件的校验和以及 1024 字节块的数目

-i 校验二进制文件时包含头信息

-o 使用逐字算法计算校验和,与版本 2 兼容,但块数目不兼容

-r 使用逐字节算法计算校验和(默认)

tail
从指定开始显示文件

+ 相对于文件开头

- 相对于文件末尾

-n Number 指定行位置开始读取文件

-f 继续从输入文件读取,可用于监视文件的增长

-c Number 指定字节

-m Number 指定多字节

-b Number 指定 512 字节块

-k Number 指定 1KB 块

-r 从文件末尾以行逆序方式显示( 20,480 字节 )

tapechk
对流式磁带设备上执行一致性校检

检查 TAPE 环境变量中的设备 (缺省 /dev/rmt0)


tar
处理归档

-c 创建新的归档 (归档中的单个文件有8GB的大小限制)

-t 列出归档中的文件

-x 从归档中抽取文件,最后抽取的副本覆盖所有以前抽取的副本

-r 写入归档的最后

-u 只将新的或更新的文件写入归档的最后

-f Archive 指定要读或写的归档,也可使用 - 表示标准输入输出 (缺省 /de

v/rmt0)

-v 处理时显示文件名称

-h 跟随符号链接

-C Directory 向指定的目录执行 chdir 子例程,归档不用相近公共父目录

-p 恢复文件(不包括目录)权限到它们的原始方式,忽略现有的用户权限屏蔽位(umask),setuid、setgid 和 tacky 位许可权也恢复给拥有 root 用户权限的用户

-d 为块文件、特殊字符文件以及先进先出(FIFO)管道进程创建单独条目,缺省不会归档这些特殊文件

-i 忽略头校验和的错误 (归档文件头中包含每个文件的校验和,恢复时忽略校验错误,这就允许从多卷归档的后面的卷中恢复文件)

-b Blocks 指定每个记录的 512 字节块数量 (缺省值和最大值都是 20)

由于记录间隙大小的原因,用大的分块因子写的磁带可以比每个记录只有一块的磁带保存更多的数据

当用 -f 标志输出到普通文件时,可使用与磁盘块大小相匹配的分块因子来节省磁盘空间

-L InputList 文件名或$变量名,列出需要归档的文件和目录 (不递归)

-l 对链接数大于 1 的文件,其相应的链接却未归档,显示错误消息

-m 使用抽取时间作为修改时间 (缺省是保留文件的修改时间)

-w 显示要进行的操作,等候用户确认

例:tar -cvf tmp.tar *.c -C /etc f1 f2 将当前目录中*.c 与 /etc目录 f1 f2 文件归档

tee
写标准输出时同步将输出复制到指定文件中

-a 将输出添加到 File 的末尾而不是覆盖写入

touch
更新文件的访问和修改时间

-m 更改文件的修改时间

-a 更改文件的访问时间

-t Time 使用指定时间而不是当前时间 [[CC]YY]MMDDhhmm[.SS]

Time 以 MMDDhhmm[YY] 的格式指定新时间戳记

-f 尝试强制 touch 运行,而不管文件的读和写许可权

-c 文件不存在不进行创建

-r RefFile 使用 RefFile 文件的相应时间

注:返回码是时间没有被成功修改的文件数目

tr
转换字符

从标准输入中将 String1 中的字符都替换成 String2 中相同位置上的字符

表达字符串的特殊序列:

C1-C2 C1和C2之间的字符

[C*Number] 由 C 所指定的字符的重复次数

[C*] 强制 String2 中的字符串与 String1 的字符串有一样的字符数

[ :ClassName: ] 当前语言环境中的 ClassName 所命名的字符类中的所有字符

\Octal 八进制值表示

\ControlCharacter 控制字符

\a 警告 \b 退格键 \f 换页 \n 换行 \r 回车 \t 制表键 \v 垂直制表键

-d 从标准输入删除包含在由 String1 指定的字符串中的每个字符

-s 在重复字符序列中除去除第一个字符以外的所有字符

-c 用 String1 字符集的补集替换 String1


例:tr '{}' '\[]' < textfile > newfile 将大括号转换成方括号

tr -s '\n' < textfile > newfile 用单独的换行替换多个换行

tty
终端全路径名写到标准输出

umask
显示或设置文件方式创建掩码

[mask] 设置当前 shell 环境的文件方式创建掩码

-S 产生符号输出

例:umask a=rx,ug+w

uname
显示操作系统名称

-s -v -r 显示操作系统名称、版本、发行版本

-p 处理器的体系结构

-n 显示节点名称,用以标识系统

-L 显示LPAR号、名称 (如果LPAR不存在,-1显示为LPAR号,NULL为LPAR名)

-M 给出类型和型号名称

-u 给出厂家代码和计算机标识符

uniq
报告或删除文件中重复的行

-d 仅显示重复行

-u 仅显示不重复的行

-f Fields/-Fields 忽略指定的字段数目

-s Characters/+Characters 忽略指定的字符的数目

-c 第1列显示输出行在文件中出现的次数

wc
统计文件的行数

-l 统计行数

-c 统计字节数

-m 统计字符数

-w 统计字数 (由空白、跳格或换行字符分隔的字符串)

whereis
找到程序的源文件、二进制文件或手册

-b 查找二进制文件 /sbin,/etc,/usr/{lib,bin,ucb,lpp}

-m 查找手册部分 /usr/share/man/*

-s 查找源部分 /usr/scr/*

which
定位一个程序文件,包含别名和路径

展开参数(如果它有别名),并沿用户路径搜索

who
显示本地系统上的所有用户信息

-m 显示当前终端信息 (等同 who am i)

-u/-i 列出 ( Logname Line Time Activity PID Hostname )

-l 列出所有登陆进程 (处在login下的终端)

-b 系统启动的时间和日期

-r 当前进程的运行级别

-t root用户上一次用date更改时钟的时间

-T/-w 显示tty状态[ST],谁能对tty写入

-H 标题行显示

-d 没有被init重新生成的所有到期进程,退出字段用于显示死进程并包含进程终止和退出值(由wait进程返回)

注:输出格式

Logname [ST] Line Time [Activity] [PID] [Hostname/Exit]

ST +对任何人可写、-仅对root用户或其所有者可写、?遇到线路故障

Activity 用户线路上的最后一个活动发生以来的小时和分钟数,(.)点表示上一分钟线路活动,(old)表示线路超过24小时或自最近系统启动以来还没使用

whoami
显示当前有效的用户标识

相关主题
文本预览
相关文档 最新文档