1 / 34

第 3 章 使 用文件

第 3 章 使 用文件. 内容概要. ◆ 使用 touch 创建空文件、 rm 删除文件 ◆ 使用 cp 、 mv 复制和移动文件 ◆ 使用 cat 、 pg 、 more 查看文本文件 ◆ 使用 wc 对文件统计 ◆ 使用 ln 为文件创建链接 ◆ 文件打印控制: qprt 、 qchk 、 qcan ◆ 使用 chmod 设置文件访问权限. 创建空文件. 命令格式:touch [ -t ] newfile1 newfile2. $ date

kirra
Download Presentation

第 3 章 使 用文件

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第3章 使用文件

  2. 内容概要 ◆ 使用 touch创建空文件、rm删除文件 ◆ 使用 cp、mv复制和移动文件 ◆ 使用 cat、pg、more 查看文本文件 ◆ 使用 wc对文件统计 ◆ 使用 ln为文件创建链接 ◆ 文件打印控制:qprt 、qchk 、qcan ◆ 使用 chmod设置文件访问权限

  3. 创建空文件 命令格式:touch [ -t ] newfile1 newfile2 ... $ date Thu Apr 05 13:10:28 GMT+08:00 2011 $ touch newfile1 $ touch -t 1104010830 newfile2 $ ls -l newfile1 newfile2 -rw-r--r-- 1 user00 staff 0 Apr 05 13:10 newfile1 -rw-r--r-- 1 user00 staff 0 Apr 01 08:30 newfile2

  4. 删除文件 ◆ 使用rm 删除文件 格式: rm file1 file2 file3 ... $ rm file1 $ rm –i file2 $ rm –f file3 $ rm –r dir

  5. 复制文件 ◆使用cp 复制文件 格式: cp source target cp file1 file2 ... target_dir $ cp file1 file2 $ cp -r dir1 dir2 $ cp file3 dir3 $ cp -h lnsfile4 file5

  6. 复制文件 将文件/home/team03/pgms/suba拷贝到/home/team01/doc目录并将其命名为programa: $ pwd /home/team01/doc $ cp /home/team03/pgms/suba programa home home before after team01 team01 doc doc mon_report trio_ltr walrus mon_report programa trio_ltr walrus

  7. 复制文件 $ cd /home/team01 $ cp doc/programa test1 c home home team01 team01 .profile manuals test1 .profile manuals test1 c doc c doc programa test1 programa programa $ cd /home/team01/doc $ cp trio_ltr ../c home home team01 team01 c doc c doc trio_ltr trio_ltr trio_ltr

  8. 移动文件 ◆使用mv 移动文件 格式:mv source target mv file1 file2 ... target_dir $ pwd /home/team01/c $ mv trio_ltr t.letter home home team01 team01 c c trio_ltr t.letter

  9. 移动文件 $ pwd /home/team01/c $ mv t.letter ../doc/letter home home team01 team01 c doc doc c trio_ltr letter trio_ltr t.letter $ pwd /home/team01/c $ mv ../doc/mon_report . home home team01 team01 c c doc doc mon_report mon_report

  10. cat查看文本文件 ◆使用cat 查看文本文件 cat file1 file2 ... $ cat walrus "The time has come," the Walrus said, "To talk of many things: Of shoes - and ships - and sealing wax - Of cabbages - and kings - And why the sea is boiling hot - And whether pigs have wings." From The Walrus And The Carpenter by Lewis Carroll (1871)

  11. pg,more查看文本文件 ◆使用pg,more 查看文本文件 pg filename more filename $ pg walrus "The time has come," the Walrus said, "To talk of many things: Of shoes - and ships - and sealing wax - Of cabbages - and kings - And why the sea is boiling hot - And whether pigs have wings." : <Enter> $ more walrus "The time has come," the Walrus said, "To talk of many things: Of shoes - and ships - and sealing wax - Of cabbages - and kings - And why the sea is boiling hot - And whether pigs have wings." walrus (100%)<Enter> 每次显示一页

  12. wc命令 ◆使用wc 计算文件或者命令输出结果的行,字以及字节数 格式: wc [-c] [-l] [-w] filename 选项: -c计算字节数 -l 计算行数 -w 计算字数 举例: $ wc myfile 17 126 1085 myfile 字节数 字数 行数

  13. ln命令 ◆使用ln 创建硬链接或”软链接“ 格式:ln source_file target_file • 硬链接 • 即允许文件在目录中有一个以上的名字 • 所有这些文件都有相同的i-node • 不能用于目录,不能跨文件系统

  14. ln命令 $ ls –li 63 -rw-r--r-- 2 team01 staff 1910 Nov 21 14:19 man_files $ ln man_files manuals $ ls -li 63 -rw-r--r-- 2 team01 staff 1910 Nov 21 14:19 man_files 63 -rw-r--r-- 2 team01 staff 1910 Nov 21 14:19 manuals $

  15. ln命令 格式: ln -s source_file target_file • “软链接”or “符号链接” • 创建一个间接引用指向源文件(符号链接) • 链接文件引用原始文件的名字和路径 • 可以用于目录,可以跨文件系统

  16. ln命令 $ ls –li 63 -rw-r--r-- 2 team01 staff 1910 Nov 21 14:19 man_files $ ln –s man_files manuals $ ls -li 63 -rw-r--r-- 1 team01 staff 1910 Nov 21 14:19 man_files 66 lrwxrwxrwx 1 team01 staff 1910 Nov 21 14:19 manuals -> man_files $

  17. 文件打印控制 • qprt - 打印文件,将文件放到打印队列 • qchk – 显示当前打印队列的状态 • qcan – 取消打印任务(指定任务号) $ qprt walrus $ qchk Queue Dev Status Job Files User PP% Blks Cp Rnk lp0 lp0 Running 99 walrus team01 1 1 1 1 $ qcan –x 99 $

  18. 文件访问权限 ls命令使用-l选项可以列出文件的详细信息 $ ls -l drwxrwxr-x 2 team01 staff 1024 Aug 12 10:16 c drwxrwxr-x 2 team01 staff 512 Feb 18 09:55 doc -rwxrwxr-x 1 team01 staff 320 Feb 22 07:30 suba -rwxrwxr-x 2 team01 staff 144 Feb 22 16:30 test1 权限位

  19. 文件访问权限 文件保护/权限 • 系统上的每个文件和目录都与权限相关联 • 三种权限类别: owner, group, 和 other • 每个类别用三位表示: read, write, execute (rwx)

  20. 文件访问权限 • 对于普通文件: • r => 可以查看文件内容 • w => 可以修改或者删除文件内容 • x => 可以执行文件(如果文件是脚本同时需要读权限) • 对于目录: • r => 可以列出目录中所有文件(ls) • w => 可以修改或者删除目录中的任何文件 • x => 可以cd进入该目录

  21. 文件访问权限 改变权限 (符号法) chmod mode filename u = 文件的拥有者 g = 拥有者所在组 o = 系统上的其他用户 a = 所有用户 + : 添加权限 - : 删除权限 = : 清除原有权限并设定为指定权限

  22. 文件访问权限 $ ls -l newfile -rw-r--r-- 1 team01 staff 58 Apr 21 16:06 newfile $ chmod go+w newfile $ ls -l newfile -rw-rw-rw- 1 team01 staff 58 Apr 21 16:06 newfile $ chmod a+x newfile $ ls -l newfile -rwxrwxrwx 1 team01 staff 58 Apr 21 16:06 newfile $ chmod o-rwx newfile $ ls -l newfile -rwxrwx--- 1 team01 staff 58 Apr 21 16:06 newfile

  23. 文件访问权限 改变权限 (八进制法) 拥有者 rwx 111 4+2+1 7 组用户 rw- 110 4+2+0 6 其他用户 r-- 100 4+0+0 4 符号 八进制 • 文件和目录的权限可以通过符号法或者八进制数来表示 • $ ls -l newfile • -rw-r--r-- 1 team01 staff 58 Apr 21 16:06 newfile • 改变权限,让拥有者和所在组有读写权限,其他用户只有读权限 • $ chmod 664 newfile • $ ls -l newfile • -rw-rw-r-- 1 team01 staff 65 Apr 22 17:06 newfile

  24. 文件访问权限 默认文件权限 新创建普通文件和目录的默认权限: 普通文件 -rw-r--r-- 644 目录drwxr-xr-x 755 通过改变umask的值来改变默认权限的设置。

  25. 文件访问权限 umask • umask在普通文件或目录被创建时,指定权限位设置。umask用八进制数表示,决定文件或目录创建时拥有哪些权限 • 新的目录: 777 - 022: 755 => rwxr-xr-x • 新的普通文件文件: 666 - 022: 644 => rw-r--r-- • 在配置文件/etc/security/user中umask默认值为022.它可以被所有用户或者某个特定用户所改变

  26. 文件访问权限 一些命令执行需要的权限 命令 源目录 源文件 目标目录 cd x N/A N/A ls r N/A N/A ls -l r, x N/A N/A mkdir x w (parent) N/A N/A rmdir x w (parent) N/A N/A cat, pg, more x r N/A mv x, w NONE x, w cp x r x, w touch x, w * NONE N/A rm x, w NONE N/A

  27. 课堂练习 • 以下命令运行会产生什么效果? $ cd /home/team01 $ cp file1 file2 • 以下命令运行会产生什么效果? $ cd /home/team01 $ mv file1 newfile • 以下命令运行会产生什么效果? $ cd /home/team01 $ ln newfile myfile • 列出可以查看文件内容的命令.

  28. 课堂练习 下面的问题是关于权限设置为rwxr-xr-x文件reporta的操作 用八进制法表示权限是什么? 用符号法将权限设置为rwx--r-- 用八进制法重新完成上面的操作 根据下面的信息完成问题4. 假设jobs目录包含joblog文件 $ ls -lR total 8 drwxr-xr-x 2 judy finance 512 June 5 11:08 jobs ./jobs: total 8 -rw-rw-r-- 1 judy finance 100 June 6 12:16 joblog 4. finance组的Fred能够修改文件joblog吗?

  29. 课堂练习 根据下面的信息回答问题。假设目录jobs包含目录work,同时目录work包含文件joblog $ ls -lR total 8 drwxrwxr-x 3 judy finance 512 June 5 11:08 jobs ./jobs: total 8 drwxrw-r-x 2 judy finance 512 June 5 11:10 work ./jobs/work: total 8 -rw-rw-r-- 1 judy finance 100 June 6 12:16 joblog • finance组的Fred能够修改文件joblog吗?

  30. 课堂练习答案 • 以下命令运行会产生什么效果? $ cd /home/team01 $ cp file1 file2 创建file1的拷贝,文件file2。file1和file2是相互独立的 • 以下命令运行会产生什么效果? $ cd /home/team01 $ mv file1 newfile 将file1重命名为newfile 3.以下命令运行会产生什么效果? $ cd /home/team01 $ ln newfile myfile 为newfile创建硬链接myfile 4.列出可以查看文件内容的命令. • cat,pg,more

  31. 课堂练习 根据下面的信息回答问题。假设目录jobs包含目录work,同时目录work包含文件joblog $ ls -lR total 8 drwxr-xr-x 3 judy finance 512 June 5 11:08 jobs ./jobs: total 8 drwxrwxrwx 2 judy finance 512 June 5 11:10 work ./jobs/work: total 8 -rw-rw-r-- 1 judy finance 100 June 6 12:16 joblog • finance组的成员Fred可以将joblog拷贝到自己的宿主目录吗?

  32. 课堂练习答案 下面的问题是关于权限设置为rwxr-xr-x文件reporta的操作 用八进制法表示权限是什么? 755 2.用符号法将权限设置为rwx--r-- chmod go-x reporta 3.用八进制法重新完成上面的操作 chmod 744 reporta 根据下面的信息完成问题4. 假设jobs目录包含joblog文件 $ ls -lR total 8 drwxr-xr-x 2 judy finance 512 June 5 11:08 jobs ./jobs: total 8 -rw-rw-r-- 1 judy finance 100 June 6 12:16 joblog 4. finance组的Fred能够修改文件joblog吗? 可以修改

  33. 课堂练习答案 根据下面的信息回答问题。假设目录jobs包含目录work,同时目录work包含文件joblog $ ls -lR total 8 drwxrwxr-x 3 judy finance 512 June 5 11:08 jobs ./jobs: total 8 drwxrw-r-x 2 judy finance 512 June 5 11:10 work ./jobs/work: total 8 -rw-rw-r-- 1 judy finance 100 June 6 12:16 joblog • finance组的Fred能够修改文件joblog吗? • 不能,因为在Fred没有对work目录执行权

  34. 课堂练习答案 根据下面的信息回答问题。假设目录jobs包含目录work,同时目录work包含文件joblog $ ls -lR total 8 drwxr-xr-x 3 judy finance 512 June 5 11:08 jobs ./jobs: total 8 drwxrwxrwx 2 judy finance 512 June 5 11:10 work ./jobs/work: total 8 -rw-rw-r-- 1 judy finance 100 June 6 12:16 joblog • finance组的成员Fred可以将joblog拷贝到自己的宿主目录吗? • 可以

More Related