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的口令