1.
unix shell 执行命令的过程:
首先在所有的PATH变量声明的目录中查找一个有效的命令,接着选项和参数被解析,参数根据所使用的除特殊字符被展开,然后命令被调用,最后命令结果显示给用户。
2.
如果没有设置目录的执行权限,目录里的文件只能列出文件名,这意味着ls可以工作,而ll不能工作。
3.
如果文件只设置了执行权限而没有读和写权限,在得知文件名的情况下可以执行也可以cat查看文件内容,也就是说可以执行但看不到文件。
4.
如果目录包含一个没有写权限的文件,虽然取得目录的写权限,也不能删除这个文件。
5.
改变默认缺省文件权限:umask 022
新建文件权限为644(系统默认为666)
新建目录权限为755(系统默认为777)
6.
改变一个目录的组或所有权,使用chown或chgrp时,带上-R选项。
7.
无论什么时候改变一个链接文件的所有权,链接文件所指向的文件所有权也被改变,为了避免这种情况,使用chown或chgrp命令时带上-h参数。
8.
特殊文件权限:
如果用户执行一个别人所以的文件,在内存中创建的进程属于执行这个文件的用户,在setuid的情况下,创建的进程属于文件的属主所有。
同样的规则适用于setgid。
粘连位用户保护整个目录下面的文件。
设置SETUID: chmod u+s file 或者 chmod 2777 file1
设置SETGID: chmod g+s file 或者 chmod 4777 file1
设置粘连位: chmod u+t file 或者 chmod 1777 file1
如果对目录设置了粘连位,用户可以把这个目录作为共享文件的公共区域,这个目录下的任何已经设置了粘连位的文件只能被文件的属主删除(FTP目录有用)
9.
文件权限acl:http://moko39848381.blog.163.com/blog/static/13982733120103161125811/
10.
临时改变当前组成员关系:newgrp (类似su)
11.
当一个文件myfile已经存在,使用touch myfile命令创建新文件时,它将把文件的修改日期和时间改为当前值。
12.
查找目录中所有设置SETUID的文件:
find /usr/bin -perm -u+s -exec ll {} \;
查找设置粘连位的文件,并将文件拷贝到/tmp目录:
find / -perm -u+t -exec cp {} /tmp \;
13.
/dev 设备目录
/dev/rdsk 包含所有与一个屋里磁盘相关的基于字符或裸设备的文件
/dev/dsk 包含磁盘的块设备文件
/etc 系统配置文件的存放
/home 系统用户的主目录
/sbin 系统二进制文件目录,包含需引导时间的可执行文件
/stand 保存UNIX内核的目录
/stand/vmunix 内核文件
/stand/system 配置文件
/stand/bulid 重建新内核的目录
/net 为远程系统的加载点预留
/opt 外部应用程序目录
/tmp 临时文件目录
/usr 系统文件存放,比如命令,库文件,数据库文件
/var 三种类型文件,日志文件,spool文件,应用程序创建时的临时文件
14.
HP-UX文件名补齐,按两下ESC来补齐,按"ESC"+"="查看选择。
15.
history 451 453 #列出历史中编号451-453的命令
r 457 #执行编号为451的历史命令
16.
设置终端参数stty
比如设置下划线为退格键 stty erase _
查看终端参数设置:stty -a
http://moko39848381.blog.163.com/blog/static/1398273312010316112928613/
17.
ESC+K 向上查询历史命令
ESC+J 向下查询历史命令
18.
通过环境变量定制一个用户,写入profile:
export TREM='vt100'
export PS1='$PWD $'
export LPDEST='laster'
export PATH=$PATH:/usr/local/bin
export EDITOR=vi
export HISTSIZE=50 #历史命令数目大小
export HISTFILE=./sh_history
19.
当用户登录时:
posix login script---->/etc/profile--->$HOME/.profile--->$HOME/.kshrc
当用户使用CDE登录时:关联文件$HOME/.dtprofile
20.
当用SAM或者useradd创建一个用户后,默认的配置文件从/etc/skel目录拷贝到用户的主目录
其中有:
/etc/skel/.profile
/etc/skel/.login
/etc/skel/.cshc
/etc/skel/.exrc
21.
找到/home目录下所有属于root的文件
find /home -user root
找到/tmp目录下所有在最后一天没有被访问的文件
find /tmp -atime +1
找到系统上所有大于10000字节的文件
find / -size +10000c