AIX操作系统基本命令
系统的进入和退出
login: 输入用户名(例如:user01)
password: 输入用户口令
若用户名及口令均正确,则用户将登陆成功。
此时系统会出现命令提示符 $或#,即表示可接收用户输入的操作系统命令。
退出系统:或 exit或logout。
例:#(or$)exit
#(or$)Ctrl^D
注,#为ROOT用户的命令提示符,$为一般用户
mkdir、rm、mv和cd
mkdir:用于创建目录
[yejinru@localhost test]$ ls
[yejinru@localhost test]$ mkdir a
[yejinru@localhost test]$ mkdir b
[yejinru@localhost test]$ ls
a b
rm:用于删除文件或目录(rm –r 删除目录时目录内有内容,用-r一起删除)
[yejinru@localhost test]$ ls a b [yejinru@localhost test]$ rm -r a [yejinru@localhost test]$ ls b [yejinru@localhost test]$
mv:用于改变文件或目录名
[yejinru@localhost test]$ ls
a b
[yejinru@localhost test]$ mv a b
[yejinru@localhost test]$ ls
b
[yejinru@localhost test]$ cd b
[yejinru@localhost b]$ ls
a
[yejinru@localhost b]$
cd:用于进入系统某一级目录中去
[yejinru@localhost ~]$ cd / [yejinru@localhost /]$ pwd / [yejinru@localhost /]$ cd /home/yejinru [yejinru@localhost ~]$
ls 功能:显示目录中的内容,列出当前目录中所有文件的文件名
参数说明:
a:列出目录中所有文件
d:列出所有子目录
l:列出长格式文件信息
举例:
ls –a:列出当前目录中的所有文件
[yejinru@localhost ~]$ ls -a . .esd_auth .nautilus .. .fonts.cache-1 passwd.txt AboutLinux .gconf .recently-used a.txt .gconfd .rhn-applet.conf .a.txt.swp .gnome s .bash_history .gnome2 shiyan2 .bash_logout .gnome2_private shiyan3 .bash_profile .gstreamer-0.8 shiyan4 .bashrc .gtkrc .s.swp .canna .gtkrc-1.2-gnome2 swap .config -i .thumbnails Desktop .ICEauthority .Trash .dmrc ls user.txt .eggcups .metacity .Xauthority .emacs .mozilla
ls –l:显示文件的详细信息
[yejinru@localhost ~]$ ls -l total 96 -rw-rw-r-- 1 yejinru yejinru 520 Mar 23 00:04 AboutLinux -rw-rw-r-- 1 yejinru yejinru 431 Mar 23 00:26 a.txt drwxr-xr-x 2 yejinru yejinru 4096 Mar 16 01:20 Desktop -rw-rw-r-- 1 yejinru yejinru 9 Mar 23 01:10 -i -rw-rw-r-- 1 yejinru yejinru 115 Mar 23 01:14 ls -rw-r--r-- 1 root root 36 Mar 23 01:43 passwd.txt -rw-rw-r-- 1 yejinru yejinru 503 Mar 28 19:55 s drwxrwxr-x 2 yejinru yejinru 4096 Mar 28 20:53 shiyan2 drwxrwxr-x 2 yejinru yejinru 4096 Mar 31 21:54 shiyan3 drwxrwxr-x 2 yejinru yejinru 4096 Mar 31 01:08 shiyan4 drwxr-xr-x 2 root root 4096 Mar 16 06:46 swap -rw-rw-r-- 1 yejinru yejinru 139 Mar 23 01:40 user.txt [yejinru@localhost ~]$
date
功能:显示当前日期和时间,超级用户可以进行修改
举例:
[yejinru@localhost b]$ date Mon Mar 31 22:13:14 PST 2014 [yejinru@localhost b]$
who
功能:列出当前系统注册的用户
举例:$who am i-- 列出当前系统使用者身份
[yejinru@localhost test]$ who yejinru :0 Mar 31 22:44 yejinru pts/1 Mar 31 22:44 (:0.0) [yejinru@localhost test]$ who am i yejinru pts/1 Mar 31 22:44 (:0.0) [yejinru@localhost test]$
finger
显示当前登陆到系统中的用户的信息
举例:
[yejinru@localhost test]$ finger Login Name Tty Idle Login Time Office Office Phone yejinru yjr *:0 Mar 31 22:44 yejinru yjr pts/1 Mar 31 22:44 (:0.0) [yejinru@localhost test]$ finger yejinru Login: yejinru Name: yjr Directory: /home/yejinru Shell: /bin/bash On since Mon Mar 31 22:44 (PST) on :0 (messages off) On since Mon Mar 31 22:44 (PST) on pts/1 from :0.0 No mail. No Plan. [yejinru@localhost test]$
kill
功能:杀死后台进程
语法:kill -num PID
举例:
kill –9 23094 (-9 是软件终止进程的信号,是不可忽略的)
find
功能:在一个或多个目录中查找符合指定条件的文件,显示文件名或对这些文件进行特定的操作
语法:find path expression
参数说明:
-typef文件
d目录
-size+n文件大小超过n blocks(1block=512 bytes)
-n文件大小小于n blocks
n文件大小等于n blocks
-mtime+xX天以前被修改的文件
-xX天以内被修改的文件
-permonum访问指定权限的文件(权限以8进制表示)
mode访问指定权限的文件(权限以字母表示,如rwx)
-userUser属于用户user的文件
-o逻辑‘或’
举例:
find . –name ‘unix’ –print
在当前目录及其子目录中查找文件名为“m*”的所有文件(‘*’是通配符)并显示文件名。
[root@localhost etc]# find . -name 'krb*' -print ./profile.d/krb5.sh ./profile.d/krb5.csh ./xinetd.d/krb5-telnet ./krb5.conf ./krb.conf ./krb.realms [root@localhost etc]#
find . –name ‘m*’ –exec ls –l {} \;
在当前目录及其子目录中查找文件名为“m*”的所有文件(‘*’是通配符)
并显示详细的文件列表信息。-exec 使得find以非交互的方式执行-exec后的命令。
‘{}’用于保留find的查找结果,并将其作为ls –l 的输入。
find . –name ‘m*’ –ok rm {} \;
在当前目录及其子目录中查找文件名为“m*”的所有文件(‘*’是通配符)删除之。
-ok 使得find以交互的方式执行-ok后的命令。
find . -perm 644 -mtime +4 –print
在当前目录及其子目录中查找权限为644、4天以前被修改过的文件。
Cat命令
功能: cat(是英文单词“concatenate”的缩写),这个命令用于连接并显示一个或多个文件的内容。在实际具体应用中,其“显示”指定文本的功能要显得更加常用一些。
语法: cat [OPTION] [FILE].
常用参数或选项:
[options]主要参数
-n:表示从第一行开始对该命令所有输出的行进行编号。
-b:也是对输出行进行编号,但对空行不编号。
应用举例:
(1)cat命令更常用于显示文本文件的内容。例如,下面命令将会查看README.txt文件的内容,可以使用命令:
$ cat README.txt ( 可以先用vi命令创建这个文件)
(2)连接文件。例如下面的命令将把oldfile_1和oldfile_2的文件内容连接,输出到新文件newfile 中:
$ cat oldfile_1 oldfile_2 > newfile( 可以先用vi命令创建这些文件)
(3)对行进行编号。例如下面的命令把 olefile的内容加上行号(空行不编号),并重定向到新文件newfile中:
$cat -b oldfile > newfile ( 可以先用vi命令创建这些文件)
chmod
功能:chmod命令用于改变文件或目录的访问权限。chmod命令有两种用法:一种是字符设定法;另一种是八进制设定法。这里重点介绍前者,而后者曾于前文介绍过。
(1)字符设定法
模式:chmod [who] [+ | - | =] [mode] 文件名
上述模式中的文件名可以是单个文件,也可以文件列表(不同文件要以空格分开),且支持通配符。
◆上述模式中的who可以是下面的任何一个字母或其组合
u:表示用户,即文件或目录的所有者。(注意所有者的缩写字母是u,而不是o,后者表示其他用户)
g:表示与该文件属主同组的所有用户。
o:表示其它用户。
a:表示所有任何用户,这个选项是系统默认值。
◆操作符号
+:对该实体who增加或者说赋予某权限。
-:对该实体who取消或者说删除某权限。
=:对该实体who增加或者说赋予给定权限,并删除该指定实体who对该文件的其它所有权限。
◆mode表示具体的权限,可能为下面的任何字母或者其组合
r:可读。
w:可写。
x:可执行。
s:也是可执行的,与x的区别是该文件在由其他具有s执行权限的用户或者用户组执行时将会把进程的属主设置为该文件的文件属主。方式“u+s”可用于设置文件的用户的s执行位,“g+s”设置组的s执行位。这个s位的一个典型例子就是passwd命令。该命令通常用来更改用户密码。但在Linux操作系统中,用户的密码及身份等信息被存放在系统的/etc/passwd文件及/etc/shadow中。这两个文件只有root可以修改。而每个一般用户通常都可以通过执行passwd命令修改自己的口令,实际上就需要修改/etc/passwd文件及/etc/shadow文件,这样就产生了矛盾。而s执行位的设置将解决这一问题:用户在执行passwd命令的过程中将会临时切换身份到root,完成高级管理功能(本例中即为修改/etc/passwd文件及/etc/shadow文件)。该管理工作执行完毕后,用户又回到自己的真实身份。在网络安全管理中,这个s执行位容易被黑客利用窃取root的执行权限。
t: sticky bit: 该位为防删除位。其实际作用是,对于设置防删除位t的目录而言,对于目录中的文件,只有文件的拥有者和root可以删除。这样的好处是对于多用户都有一定权限的公用目录,就不用担心其他用户删除某个实际拥有该文件的用户的文件。sticky位在Linux中仅对目录有效。
应用举例:
(1)下面的命令对目录test_dir的所有者u增加读r和写w的权限:
$ chmod u+rw test_dir
(2) 下面的命令对文件的所有用户ugo删除写w权限:
$ chmod a-w test_file
(3)下面的例子显示了对1.txt修改权限前后的文件属性变化。
[cc@localhost ~]$ ls -l
total 28
-rw-rw-r-- 1 cc cc 12596 Jun 6 00:46 1.txt
drwxr-xr-x 2 cc cc 4096 Jun 4 17:33 Desktop
[cc@localhost ~]$ chmod u+x 1.txt
[cc@localhost ~]$ ls -l
total 28
-rwxrw-r-- 1 cc cc 12596 Jun 6 00:46 1.txt
drwxr-xr-x 2 cc cc 4096 Jun 4 17:33 Desktop
[cc@localhost ~]$
wc
功能:计算文件中的行数、字数和字符数
参数说明:
c:计算字符数
l:计算行数
w:计算字数
举例:
[yejinru@localhost test]$ wc txt 1 3 19 txt
上面对应的是:行数 字数 字符数
ps
功能:显示后台进程的有关信息。单独使用ps将显示由当前终端启动的后台进程的PID、终端号、进程已执行时间以及启动该进程的命令
语法:ps -options
参数说明:
-e:显示系统内当前运行的所有后台进程
-f:除ps所提供的信息外,还显示用户名、PPID(父进程ID)及启动时间
-l:除ps所提供的信息外,还显示 User ID, PPID 和进程优先级
例:
[yejinru@localhost test]$ ps PID TTY TIME CMD 4283 pts/1 00:00:00 bash 4370 pts/1 00:00:00 ps [yejinru@localhost test]$ ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 22:20 ? 00:00:00 init [5] root 2 1 0 22:20 ? 00:00:00 [ksoftirqroot 3 1 0 22:20 ? 00:00:00 [events/0root 4 3 0 22:20 ? 00:00:00 [khelper]root 5 3 0 22:20 ? 00:00:00 [kacpid] root 86 3 0 22:20 ? 00:00:00 [kblockd/root 87 1 0 22:20 ? 00:00:00 [khubd] root 96 3 0 22:20 ? 00:00:00 [pdflush]root 97 3 0 22:20 ? 00:00:00 [pdflush]root 99 3 0 22:20 ? 00:00:00 [aio/0] root 98 1 0 22:20 ? 00:00:00 [kswapd0]root 173 1 0 22:20 ? 00:00:00 [kseriod]root 244 1 0 22:20 ? 00:00:00 [scsi_eh_root 257 1 0 22:20 ? 00:00:00 [kjournalroot 1168 1 0 22:20 ? 00:00:00 udevd root 1763 1 0 22:20 ? 00:00:00 /sbin/dhcroot 2004 1 0 22:20 ? 00:00:00 [kjournalroot 2203 3 0 22:20 ? 00:00:00 [vmmemctlroot 2564 1 0 22:20 ? 00:00:00 /usr/sbinroot 2926 1 0 22:22 ? 00:00:00 syslogd -root 2930 1 0 22:22 ? 00:00:00 klogd -x rpc 2951 1 0 22:22 ? 00:00:00 portmap rpcuser 2971 1 0 22:22 ? 00:00:00 rpc.statdroot 3004 1 0 22:22 ? 00:00:00 rpc.idmaproot 3074 1 0 22:22 ? 00:00:00 /usr/sbinroot 3086 1 0 22:22 ? 00:00:00 cupsd root 3122 1 0 22:22 ? 00:00:00 /usr/sbinroot 3137 1 0 22:22 ? 00:00:00 xinetd -sroot 3180 1 0 22:22 ? 00:00:00 sendmail:smmsp 3188 1 0 22:22 ? 00:00:00 sendmail:root 3199 1 0 22:22 ? 00:00:00 gpm -m /dhtt 3229 1 0 22:22 ? 00:00:00 /usr/sbinhtt 3230 3229 0 22:22 ? 00:00:00 htt_servecanna 3242 1 0 22:22 ? 00:00:00 /usr/sbinroot 3254 1 0 22:22 ? 00:00:00 crond xfs 3289 1 0 22:22 ? 00:00:00 xfs -dropdaemon 3308 1 0 22:22 ? 00:00:00 /usr/sbindbus 3353 1 0 22:22 ? 00:00:00 dbus-daemroot 3367 1 0 22:22 ? 00:00:00 cups-confroot 3378 1 0 22:22 ? 00:00:01 hald root 3388 1 0 22:22 tty1 00:00:00 /sbin/minroot 3413 1 0 22:22 tty2 00:00:00 /sbin/minroot 3414 1 0 22:22 tty3 00:00:00 /sbin/minroot 3427 1 0 22:22 tty4 00:00:00 /sbin/minroot 3452 1 0 22:22 tty5 00:00:00 /sbin/minroot 3578 1 0 22:22 tty6 00:00:00 /sbin/minroot 3603 1 0 22:22 ? 00:00:00 /usr/bin/root 3820 3603 0 22:22 ? 00:00:00 /usr/bin/root 3825 3820 0 22:22 ? 00:00:04 /usr/X11Ryejinru 4133 3820 0 22:44 ? 00:00:00 /usr/bin/yejinru 4150 4133 0 22:44 ? 00:00:00 [Xsessionyejinru 4165 1 0 22:44 ? 00:00:00 /usr/bin/yejinru 4192 1 0 22:44 ? 00:00:00 /usr/bin/yejinru 4193 1 0 22:44 ? 00:00:00 dbus-daemyejinru 4198 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4201 1 0 22:44 ? 00:00:00 /usr/bin/yejinru 4203 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4205 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4211 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4220 1 0 22:44 ? 00:00:00 xscreensayejinru 4244 1 0 22:44 ? 00:00:00 /usr/bin/yejinru 4248 1 0 22:44 ? 00:00:00 gnome-panyejinru 4250 1 0 22:44 ? 00:00:00 nautilus yejinru 4252 1 0 22:44 ? 00:00:00 gnome-volyejinru 4254 1 0 22:44 ? 00:00:00 eggcups -yejinru 4256 1 0 22:44 ? 00:00:00 pam-panelyejinru 4258 1 0 22:44 ? 00:00:03 /usr/bin/root 4260 4256 0 22:44 ? 00:00:00 /sbin/pamyejinru 4263 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4271 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4273 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4275 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4277 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4279 1 0 22:44 ? 00:00:00 /usr/libeyejinru 4281 1 0 22:44 ? 00:00:01 gnome-teryejinru 4282 4281 0 22:44 ? 00:00:00 gnome-ptyyejinru 4283 4281 0 22:44 pts/1 00:00:00 bash yejinru 4304 1 0 22:44 ? 00:00:00 /usr/lib/yejinru 4464 4283 0 22:52 pts/1 00:00:00 ps -ef [yejinru@localhost test]$ [yejinru@localhost test]$ ps -l F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 0 S 500 4283 4281 0 75 0 - 1360 wait pts/1 00:00:00 bash 0 R 500 4465 4283 0 77 0 - 567 - pts/1 00:00:00 ps [yejinru@localhost test]$
grep
功能:在文件或标准输入中搜索与指定格式相匹配的行
语法:grep [options] pattern [file1 file 2..]
参数说明:
-v:显示与指定格式不匹配的行
-c:统计满足条件的行数
-l:只显示满足匹配条件的文件名
-n:显示满足条件的行所在的行号
-I:查找时忽略大小写
-w:做全单词匹配
举例:
grep a websm.log
搜索.profile文件中与mail匹配的行并显示。
# grep a websm.log
com.ibm.websm.preferences.WXPreferenceException: Unable to load preferences from /WebSM.pref.
Default settings will be used. This preference file will be updated
if the Check Button in the Exit Confirmation Dialog is checked.
at com.ibm.websm.preferences.WSPreferenceImpl.loadData(WSPreferenceImpl.java:185)
at com.ibm.websm.preferences.WCPreferences.LoadData(WCPreferences.java:194)
at com.ibm.websm.preferences.WCPreferences.(WCPreferences.java:111)
at com.ibm.websm.console.WConsole.getPreferences(WConsole.java:592)
at com.ibm.websm.console.WConsole.getPrefData(WConsole.java:559)
at com.ibm.websm.console.WConsole.(WConsole.java:119)
at com.ibm.websm.console.WConsole.main(WConsole.java:1294)
com.ibm.websm.bridge.directory.WDirectoryException: Caught EOFException while
reading the stream header
at com.ibm.websm.bridge.directory.WDirectory.get(WDirectory.java:128)
at com.ibm.websm.preferences.WSPreferenceImpl.loadData(WSPreferenceImpl.java:178)
at com.ibm.websm.preferences.WCPreferences.LoadData(WCPreferences.java:194)
at com.ibm.websm.preferences.WCPreferences.(WCPreferences.java:111)
at com.ibm.websm.console.WConsole.getPreferences(WConsole.java:592)
at com.ibm.websm.console.WConsole.getPrefData(WConsole.java:559)
at com.ibm.websm.console.WConsole.(WConsole.java:119)
at com.ibm.websm.console.WConsole.main(WConsole.java:1294)
#
grep –v mail .profile
显示与mail不匹配的行。
grep “^a[0-9]z$” filename
在filename中查找以’a’开头、以’z’结尾、中间包含数字’0’-‘9’的串。