Solaris系统使用小技巧

在从WINDOWS传到UNIX在每行的结尾可能会出现^M
    解决方法:
    1、用ASCII模式重传。
    2、用vi 中的替换
       %s/^M$//  <- ^ ctrl+v   M ctrl+m
       
       
    文件名为 -filename 如何去删除
    rm -- "-filename"
         
    fd      -       /dev/fd fd      -       no      -
    /proc   -       /proc   proc    -       no      -
    /dev/dsk/c0t3d0s0       /dev/rdsk/c0t3d0s0      /       ufs     1       no      -
    /dev/dsk/c0t0d0s3       /dev/rdsk/c0t0d0s3      /usr    ufs     1       no      -
    /dev/dsk/c0t0d0s0       /dev/rdsk/c0t0d0s0      /download  ufs     2       yes     -
    /dev/dsk/c0t3d0s1       /dev/rdsk/c0t3d0s1      /export ufs     2       yes     -
    #/dev/dsk/c0t0d0s1       -       -       swap    -       no      -
    #swap    -       /tmp    tmpfs   -       yes     -
    ls的特殊用法:
    %ls -R // 显示所有文件包括子目录
    %ls * // 同上
    %ls -t // 以时间排序来显示
    下面的语句可以帮你计算有多少个文件和多少个目录..
    # ls -l * |grep "^-"|wc -l // to count files 
    # ls -l * |grep "^d"|wc -l // to count dir 
    还可以将以上的语句变成script或做个alias
    只列子目录的方法:
    ls -F | grep /$ 或者 alias sub = "ls -F | grep /$"(linux)
    ls -l | grep "^d" 或者 ls -lL | grep "^d" (Solaris)
    Grep命令用法
    %grep user1 /etc/passwd
    %grep -i user1 /etc/passwd //不管大小写 
    Alias用法
    %alias find1 find . -name '\!*' -print // alias a new find 
    Find命令用法
    %find . ctime 0 -print //搜寻今天修改过的所有文件
    %find . -name '*.bak' -exec rm {}\ //搜寻加删除
    %find . \(-name *.txt -ctime 7\) -print //搜寻7天前修改过的txt文件
    利用Find命令改变所有权,想要改变当前目录下所有文件的所有权,可以这样:
    find . -exec chown OWNER.[GROUP] {} \; (Solaris)
    find . -exec chown -R OWNER.[GROUP] {} \; (Linux) 
    Cut命令用法
    %cut -f field_list file //以逗号或空格来间隔
    %cut -d: -f5,7-9 mydata //以冒号来间隔
    %cut -s -c35-40 mydata //以列数来间隔-s 不包括头部注释
    列出除了某些类型文件的当前目录所有文件:
    使用Ksh,用ls !(*.Z)可以显示所有文件,除了*.Z文件。
    这个命令在一个目录里有许多种类型的文件的时候很有用。 
    改变unix提示符:
    %PS1=’newprompt’
    %export PS1
    还可以这么做:
    %set prompt='user1[\!]' // \! 显示命令次数 
    为环境变量增加新PATH路径(不影响老路径)。
    %PATH=$PATH:$HOME/bin:/…/…/
    %export PATH 
    列举与某个主题相关的所有unix命令:
    %apropos lp //列举与lp(打印机)相关的所有命令 
    查看unix版本号:
    %uname –a
    UNIX下整个目录拷贝
    %cp –r /home/baoshan/zzy .
    //将/home/baoshan/zzy整个目录拷贝到当前目录下
    UNIX下文件格式与DOS文件格式互换
    %unix2dos oldfile newfile
    %dos2unix oldfile newfile
    查看UNIX下已经安装的包-package
    %pkginfo
    显示某一目录下所有文件size
    %du –d /; //显示根目录下所有文件的size大小
    文件加密:
    %crypt passwd < myfile > newfile //compress
    %rm myfile
    %crypt passwd < newfile //restore
    取消^M字符:
    当你FTP一些DOS文件到unix下时,你经常会看见每行文件后面有个讨
    厌的^M 字符,(把 HTML 文件传输到 UNIX 系统可引起回车符转变成“^M”字符),
    有两个简单的方法可以取消它。
    用"vi"打开此文件,在Command mode下敲入:
    :%s/^V^M//g 
    或者,在UNIX SHELL下敲入:
    sed 's/^V^M//g' foo > foo.new 
    使用nohup命令:
    如果你想进程在你退出系统后还能执行,可以使用NOHUP命令
    如: % nohup tar -cf /dev/tape /home & 
    你退出后再重新登录的话,使用'ps'命令可以看到进程还在执行
    查看文件的方法:
    如果你只想看文件的前5行,可以使用head命令,如:
    head -5 /etc/passwd 
    如果你想查看文件的后10行,可以使用tail命令,如:
    tail -10 /etc/passwd 
    你知道怎么查看文件中间一段吗?你可以使用sed命令 如: 
    sed -n '5,10p' /etc/passwd 
    这样你就可以只查看文件的第5行到第10行。
    检查磁盘剩余空间:
    %df –k
    %df –t
    超级用户修改系统时间:
    #date MMDDHHMI
    #date –u MMDDHHMIYYYY
    超级用户修改正常用户口令:
    #passwd –d user1 //删除用户user1的口令