从今天开始,小段就要跟老师学Solaris的操作和管理了,有兴趣的朋友一起来呀!用我们老师的话来激励大家:每天都要有进展。
        小段的学习环境:WinXP_SP3+VMWare_6.5+Solaris_10_86,至于Solaris的安装,我在另一篇文章中有说明:虚拟机安装Solaris10
命令格式:命令 参数
1.    ls  显示文件名(List Contents Of Directory),等同于DOS下的dir命令。
        命令格式:ls [option] file 
        option:
   →  -l 显示详细列表
        域1 :文件类型和文件权限
        域2 :文件连接数
        域3 :文件所有者名字
        域4 :文件用户组名字
        域5 :文件长度
        域6-8 :最近修改日期
        域9 :文件名
Snap2
   →  -a 显示所有文件,包含隐藏文件(以. 起头的文件名)
Snap3
   →  -R 显示文件及所有子目录
Snap4
   →  -F 显示文件(后跟*)和目录(后跟/)
Snap5
Snap6
   →  -d 与l选项合用,显示目录名而非其内容
 Snap7
2.cd 目录转换(Change Directory),等同于dos下cd命令。
        注意目录分隔符为“/”,与dos相反
        命令格式:cd dirname
3.pwd 显示当前路径(Print Working Directory)
Snap8
4.cat 显示文件内容(Concatenate And Display Files),等同于dos下type命令
        命令格式:cat filename
Snap9
5.more 以分页方式查看文件内容.
        命令格式:more filename
Snap10
6.rm 删除文件(Remove)
        命令格式: rm [-r -f] filename (filename 可为文档名、目录名)
        -r 递归(Recursive)
        -f 强制(Force)
7.mkdir 创建目录(Make Directory)
        命令格式: mkdir [-p] directory-name
Snap11
8.rmdir 删除目录(Remove Directory)
        目录必须首先为空
        命令格式: rmdir directory
        -r 递归(Recursive)
        -f 强制(Force)
9.cp 文档复制(Copy)
        命令格式: cp [-r -f] source target
        -r 递归(Recursive)
        -f 强制(Force)
10.mv 文件移动(Move)
        命令格式: mv source target
        -r 递归(Recursive)
        -f 强制(Force)
11.du 查看目录所占磁碟容量(Disk Usage)
        命令格式: du [-sk] directory
        例子 :
        du xduan 显示目录 xduan 的总容量及其次目录的容量
        du -sk xduan 显示目录 xduan 的总容量,以k bytes为计量
Snap12
12.find 文件查找
        命令格式: find dir -name filename command
        例子:
        find . -name hello -print 寻找目前目录及所有的子目录内叫hello的文档.
Snap13
        find . -ctime +1 -print 找出一天内未被更动的文档
Snap14
        find . -size +2m -print 找出大小超过2 bytes的文档
 Snap16
        find /tmp -user root -print 在/tmp下属於root的文档
Snap15
       find . -name test\* -print 显示当前目录及其子目录文件名前4位为test的文件名
Snap17
13.vi 编辑器(这个强大的编辑器,必须苦练!)
      ★命令状态:
        j,k,h,l:上下左右
        0:行首
        $:行尾
        i,I :插入命令,i 在当前光标处插入 I 行首插入 (Insert)
        a,A:追加命令,a 在当前光标后追加,A 在行末追加 (Append)
        o,O:打开命令,o 在当前行下打开一行,O在当前行上插入一行 (Open)
        r,R :替换命令,r 替换当前光标处字符,R从光标处开始替换 (Replace)
        数字s: 替换指定数量字符
        x: 删除光标处字符
        dd: 删除当前行
        d0: 删除光标前半行
        d$: 删除光标后半行
        ctrl+f :后翻页
        ctrl+b:前翻页
        G : 文件尾
        数字G: 数字所指定行
        /string 查找字符串
        n 继续查找
        N 反向继续查找
        % 查找对应括号
        u 取消上次操作
      ★ex命令状态
        :set number 显示行号
        :set smd 显示显示状态
        :0 文件首
        :1,5 copy 7 块拷贝
        :1,5 del 块删除
        :1,5 move 7 块移动
        :1,$s/string1/string2/g 全文件查找string1并替换为string2
        :wq! 存盘退出
★★★增强命令
1. ln 文档连结(Link)
        命令格式:ln -s oldname newname ( Hard link )
        同一文档,可拥有一个以上之名称,可将文档做数个连结.
        例子 :
        ln -s file1 file2 将名称 file2,连结至文档 file1.
2.grep 搜索字符串(很常用!否则你就在整篇文章中找吧)
        命令格式:
        grep string filename
        寻找字串的方法很多,比如说我想找所有以M开头的行.此时必须引进pattern的观
        念.以下是一些简单的实例,以及说明:
        ^M 以M开头的行,^表示开始的意思
        M$ 以M结尾的行,$表示结束的意思
        ^[0-9] 以数字开始的行,[ ]内可列举字母
        ^[124ab] 以1,2,4,a,或b开头的行
        ^b.503 句点表示任一字母
        * 星号表示0个以上的字母(可以没有)
        + 加号表示1个以上的字母
        \. 斜线可以去掉特殊意义
        cat passwd | grep ^b 
        cat passwd | grep ^s  密码过滤
        cat passwd | grep '^b.503'
        grep '^\.' myfile.txt 列出所有以句点开头的行
3.fgrep 搜索字符串
        命令格式:fgrep string file
4.file 显示文件类型
        命令格式:file fileall
        文件类型为shell .,ELF 32bit,ASCII text,data or tar file
5.diff 比较文档或目录之不同内容(Different)
        命令格式:diff [-r] name1 name2 ( name1 name2 可同时为文档名,或目录名称.)
        例子 :
        %diff file1 file2    比较文档 file1 与 file2 内,各行之不同处.
        %diff -r dir1 dir2     比较目录 dir1 与 dir2 内,各文档之不同处.
6.cmp 比较文档相同部分(Compare)
        命令格式:cmp file1 file2
7.ftp 远程文件传输(File Transfer Protocol)
        命令格式: ftp [hostname|IP address]
        在进入 ftp 之后,如果与 remote host 连接上了,它将会询问你 username  与密码,如果输入对了就可以开始进行文档传输.
        注意:如用户无密码,无法注册
        (1) ftp 命令
        ascii 将传输模式设为 ascii 模式.通常用於传送文字档.
        binary 将传输模式设为 binary 模式,通常用於传送执行档,压缩档与影像
        档等.
        cd remote-directory 将远程主机上的工作目录改变.
        lcd [ directory ] 更改本地主机的工作目录.
        ls [ remote-directory ] [ local-file ] 列出远程主机上的文档.
        get remote-file [ local-file ] 取得远方的文档.
        mget remote-files 可使用通用字元一次取得多个文档.
        put local-file [ remote-file] 将本地主机的文档送到远程主机.
        mput local-files 可使用通用字元一次将多个文档放到远程主机上.
        help [ command ] 线上辅助指令.
        mkdir directory-name 在远程主机创建一个目录.
        prompt 更改交谈模式,若为 . 则在 mput 与 mget 时每作一个文档之传
        输时均会询问.
        quit/bye 离开ftp .
        (2) 后台执行ftp
        1.首先,将过程所用到的指令依顺序放入文档中,如下:
        %cat ftp_command
        !mkdir test
        lcd test
        cd test
        prompt
        binary
        mget *.*
        bye
        2.其次,建一个.netrc档,属性为400,让ftp 自动到此读取Username
        与Password,方可顺利login 到的主机,如下:
        %cat .netrc
        machine remote login anonymous password guest
        3.最後再执行下面指令即可.
        %nohup ftp remote < ftp_command > message &
8.telnet 远程终端访问
        命令格式:
        telnet [hostname|IP address]
9.IO重新导向
        UNIX所有的程式执行时,均需要资料的输入以及输出资料.一般而言,资料是从键盘输入,并将资料输出到屏幕上,这就叫做标准输入及标准输出,而我们可以更改标准出输出入.
        A. 更改标准输入 —— 在命令後方加"< " ,即可从这个文档输入资料。
        B. 更改标准输出 —— 在命令後方加"> " ,即可将屏幕输出的资料导向到这个文档上。
        C. 更改标准输出 —— 在命令后方加"&gt;&gt; ",功能与B.相似,只不过这会将资料加在文档后面.。
        D. 管道 —— 在两个命令中间加上'|',即可将前方指令的输出当成后面输入命令。
        例:
        cd /xduan
        ls -l &gt; file.txt
        cat file.txt
Snap18
        ls | more
Snap19
        ls | wc -l (word count, count line number,算出文档数目)
Snap20
 
好了,今天就到此为止吧,一定要好好练习哦!现在已经是2:36了,不打扰你们休息了。呵呵!