Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104573507
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-19 13:05:39

 

      UNIX文件是


      ●数据的集合


      ●字符或字节流


      ●操作系统在文件上并不赋予任何结构

      unix与window文件的格式并不相同,它包括三类文件


      ● 普通文件:它的内容是文本或代码数据


      ● 目录文件:它的内容是该目录中包括的文件名的列表


      ● 特殊文件:代表了硬件或逻辑设备,一般在目录/dev中。如设备文件/dev/tty1表示的是字符终端tty1

      文件名称应是文件内容的描述,组成文件名的字符应是


      ●所有字符应为字母,下划线,数字,#,。,· 等


      文件名应该注意以下事项:


      ●中间不能有空格


      ●不能用shell命令的特殊字符,如:* ? 〈 〉 — ; ! \


      ●不能以“+” 和“--”开头


      ●不能与系统命令名相同


      ●区分大小写


      ●以.开头的为隐藏文件


      ●文件名最多为255个字符

      文件在磁盘中包括两部分: i 节点--对文件的描述(每一个文件对应一个 i节点),数据块


      unix的文件名称存在该文件所在的目录文件中,目录文件还存储了文件对应的i节点号,通过i节点号可以找到相应的i节点,i节点中包含以下内容


      ● 文件的大小、修改日期、时间、连结数、文件物理定位等。


      目录文件包含以下内容


      ● 目录中每个文件有一项;项由文件名,该文件的i节点块地址组成.

      我们在这里介绍文件的复制,改名,移动的目录


      ● cp ---- 文件拷贝


      cp 源名 目标名


      如将/home/student1的文件 test考到 /home/student3下,并命名为 newfile:


      $cp /home/student1/test newfile


      ● mv --- 移动文件


      mv 源文件名 目标文件名


      例如:


      $ mv letter ../letter1


      将文件letter移动到其父目录改名为letter1


      ● 可实现文件的改名 :$mv old_file newfile


      例如:


      $ mv letter letter1


      将文件letter改名为letter1

      ● ln 源文件名 文件别名


      例如:如将文件manuals 改名为 man_files:


      $ln manuals man_files


      ln -s 源文件名 目标文件,表示建立符号链接(-s 可以跨越文件系统)

      ● cat --- 列示文件内容


      $pwd


      /home/student1/doc


      $ls


      letter file1 file2


      $cat file1


      this is my first file.


      By student1


      $


      ● pg , more ---- 分屏显示文件内容


      pg filename 或 more filename


      敲空格或回车键继续显示

      ● rm file1 file2 …例如: 删除文件mon_report:


      $ls


      mon_report file_12 wall


      $rm mon_report


      $ls


      file_12 wall


      交互式删除:


      $rm -i file1


      rm: remove file1 ? Y


      $

      qprt ,lpr ,lp ---将文件放入打印队列


      qchk --- 显示当前打印队列状态


      qcan --- 取消打印作业


      例如: $qprt file1


      $qchk


      Queue Dev Statue Job Files User PP% …


      lp0 lp0 Running 17 file1 student1 ….


      其中Queue表示打印队列名称,Dev表示打印机名称,Statue表示打印任务的状态,job表示的打印作业的作业号,该值是系统唯一的.


      ●取消打印作业: $qcan -k 作业号


      如:


      $qcan -k 17


      这是AIX系统目录树的一部分,其中dev目录存放的是系统的设备文件,home目录存放的是用户目录.其它是系统目录

      ● 路径名: 是一系列用 / 分隔的文件名,描述了当前所在的目录。系统可以根据路径名查找文件


      ● 绝对路径:从根目录开始


      ● 相对路径:不是从根目录开始的目录路径


      ● 路径名举例 : (当前为:/home/student1 )


      /home/student1/doc/mon_report 绝对路径


      doc/mon_report 相对路径


      ../student2/programs/suba 相对路径


      ./test1

      ● 显示当前路径:pwd 命令


      $pwd


      /home/student1


      ● 改变当前路径:cd 命令


      $cd 路径名


      如果想从目录 /home 改变到 /home/student1


      $cd student1 --- 用相对路径


      $cd /home/student1 --- 用绝对路径


      $cd --- 进入缺省目录(主目录)


      $cd .. 进入上一级目录

      ● ls 命令 :$ls 目录名


      列当前目录下的文件:


      $pwd


      /home/student1


      $ls


      c doc manuals test


      ● 列出包括隐藏(. 开头)文件在内的所有文件:$ls -a


      ● 列出包括子目录下文件在内的文件


      $ls -R


      ●创建目录 : $mkdir 目录名


      如在 /home/student1 创建子目录 /test:


      $mkdir /home/student1/test -- 绝对目录


      或 $cd /home/student1 , $mkdir test --- 相对路径


      ● 删除目录: $rmdir 目录名


      使用此命令有两个前提:


      1。 指定的目录必须为空目录


      2。指定的目录不能是当前的目录


      如删除目录 /home/student1/doc :


      $cd /home/student1


      $ rmdir doc

      统在文件的i节点中存放这该文件的属性,这些属性声明了不同的用户对该文件拥有什么样的权限,同时也表明文件的大小和文件创建,修改时间.我们可以用ls -l的命令列出文件的属性


      $ls -l



      drwxrwxr-x 2 wang staff 41 Feb 22 18:20 test


      -rw-r--r-- 1 wang staff 512 Feb 22 18:20 file1


      ● 每一项的含义


      文件类型(权限声明) 链接数 文件主 所属组名 文件长度 时间 文件名

       

      用ls -l得到的结果中从第二列到第十列的这九列表示不同的人对该文件的使用权限,每三列为一组


      rwx rwx rwx


      分别表示对文件主,文件所属于的组的成员用户和其他人这三种人的权限


      ● 对一般文件:


      r = read 可读


      w = write 修改、删除


      x = execute 可执行


      ● 对目录


      r 可察看目录内容


      w 可对目录文件修改、删除


      x 可进入该目录

      ● 许可权的修改


      $chmod [选项] 文件名


      选项有


      u 文件主


      g 组


      o 其他人


      a 所有人


      - 除去特性


      + 增加特性


      = 设置特性


      如将文件改成同组和其他用户都可写:


      $chmod go+w file1


      $ ls -l file1


      -rw-rw-rw- 1 student1 staff 58 Apr 21 18:30 file1

      文件的许可权除了用符号形式表达以外还可以用三位八进制数表示


      ●许可权的数码表示形式:文件、目录许可权对应数码



      $ chmod 764 file1


      $ ls -l file1


      -rwxrw-r-- 1 student1 staff 58 Apr 21 16:25 file1

      文件和目录在创建时系统都会付给她一个权限,这个权限是系统通过用户的umask值计算得到的.目录是用777和umask值做异或运算得来,而文件是用666和umask值做异或运算得来.用户默认得秒拾值是022,则用户创建得文件缺省权限是644,目录缺省权限是755.我们可以修改自己得umask值


      ● 修改文件的缺省许可权:


      umask 命令-- 显示或修改文件的缺省许可权


      umask [-s] [掩码]


      ● 缺省许可权是指文件或目录新建时被系统赋予的许可


      ● 无参数时显示缺省许可权


      ● -s 以符号形式显示


      掩码可为符号形式或数字形式


      如:


      $umask 022


      我们一般推荐用户可将自己得umask值设置为027,即文件得缺省权限是640,目录得缺省权限是750.将其他用户在该文件得控制权限全部否定.

      我们以前提到得一些文件和目录操纵命令对源文件(目录)和目的文件(目录)都是有一定得权限要求,这些命令得权限要求如下:

阅读(796) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~