实验环境
- 为了提高使用Linux操作系统的效率和熟练度,安装好操作系统以后,需要进一步学习操作系统中基本的文件和目录管理命令
查看及切换目录:
[root@localhost /]# pwd
/
[root@localhost /]# 
[root@localhost /]# cd /boot/grub 
[root@localhost grub]# pwd
/boot/grub 
[root@localhost grub]# ls -ld
drwxr-xr-x. 2 root root 27 6月  25 00:34 .
[root@localhost grub]# du -sh /var/log
4.4M  /var/log创建目录和文件:
[root@localhost /]# mkdir public_html
[root@localhost /]# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  public_html  root  run  sbin  srv  sys  tmp  usr  var
[root@localhost /]# 
[root@localhost /]# touch 123.mp4
[root@localhost /]# ls
123.mp4  bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  public_html  root  run  sbin  srv  sys  tmp  usr  var
[root@localhost /]# 
[root@localhost /]# 
[root@localhost /]# mkdir /bin/wx
[root@localhost /]# ln -s /bin/bzip2 /bin/wx
[root@localhost /]# ls -lh /bin/wx/bzip2
lrwxrwxrwx. 1 root root 10 6月  27 16:13 /bin/wx/bzip2 -> /bin/bzip2
[root@localhost /]# 复制、删除、移动、目录和文件:
[root@localhost /]# cp /bin/touch ./mytouch
[root@localhost /]# ls
123.mp4  bin  boot  dev  etc  home  lib  lib64  media  mnt  mytouch  opt  proc  public_html  root  run  sbin  srv  sys  tmp  usr  var
[root@localhost /]# 
[root@localhost /]# rm -rf public_html/grub
[root@localhost /]# ls public_html/
[root@localhost /]# 
[root@localhost /]# 
[root@localhost /]# mv mytouch mkfile
[root@localhost /]# ls
123.mp4  bin  boot  dev  etc  home  lib  lib64  media  mkfile  mnt  opt  proc  public_html  root  run  sbin  srv  sys  tmp  usr  var
[root@localhost /]# 查找目录和文件:
[root@localhost /]# which ls
alias ls='ls --color=auto'
  /usr/bin/ls
[root@localhost /]# 
[root@localhost /]# find /etc -name "res*.conf"
/etc/resolv.conf
[root@localhost /]#使用man, --help选项查看find命令的帮助信息
[root@localhost /]# man find
FIND(1)                                                           General Commands Manual                                                           FIND(1)
NAME
       find - 递归地在层次目录中处理文件
总览 SYNOPSIS
       find [path...] [expression]
描述 DESCRIPTION
       这个文档是GNU版本     find     命令的使用手册。     find     搜索目录树上的每一个文件名,它从左至右运算给定的表达式,按照优先规则(见运    算符OPERA‐
       TORS一节)进行匹配,直到得出结果(左边运算在 '与' 操作中得出假, 在'或' 操作中得出真),然后 find 移向下一个文件名。
       第一个以 '-' , '(' , ')' , ',' 或 '!'  这些字符起始的参数是表达式的开始;  在它之前的任何参数是要搜索的路径,在它之后的任何参数都是表达式的余下部分。
       如果没有路径参数,缺省用当前目录。如果没有表达式,缺省表达式 用 '-print'.
       当所有文件都成功处理时 find 退出并返回状态值0。如果发生错误则返回一个大于0的值。
表达式 EXPRESSIONS
       表达式是由选项(选项总是影响所有的操作,  而不仅仅是一个指定的文件的处  理,  而且总是返回真值),测试(测试返回一个真值或一个假值),还有动 作(动作有side
       effects,   返回一个真值或假值)   组成。它们都以运算符分开.忽   略运算符的时候,默认使用    -and    连接.    如果表达式没有包含    -prune    以外的动
       作,当表达式为真时会执行 -print 动作。
   选项 OPTIONS
       所有的选项都总是返回真值,它们总会被执行,除非放在表达式中执行不到的地方。 因此,清楚起见,最好把它们放在表达式的开头部分。
       -daystart
              从当日起始时开始而不是从24小时之前,计算时间(for -amin, -atime, -cmin, -ctime, -mmin, and -mtime)。
       -depth 先处理目录的内容再处理目录本身。
       -follow
              不检索符号链接。隐含了 -noleaf。
       -help, --help
              列出 find 的命令行用法的概要,然后退出。
       -maxdepth levels
              进入命令行参数指定的目录下层目录时,最深不超过levels(一个非负整数) 层。`-maxdepth 0' 意味着只在命令行参数指定的目录中执行测试和动作。
       -mindepth levels
              不在levels(一个非负整数)层之内执行任何测试和动作。`-mindepth 1'意 味着处理所有的文件,除了命令行参数指定的目录中的文件。
       -mount 不进入处于其它文件系统之上的目录。可以用-xdev代替,从而和一些其他版本的 find 兼容。
       -noleaf
              不为“目录中子目录数量比硬连接数少2”这种假设做优化。这个选项在搜索那些不遵                循UNIX文件系统链接约定的文件系统时用,比如CD-ROM,MS-
              DOS文件系统或AFS卷的 加载点。在普通的UNIX文件系统中,每个目录至少有两个硬连接,它的名字和它 的  '.'  条目。另外,它的子目录(假如有)还会各有一个
              '..'                 链接到它。在                find                检索一个目录时,发现子目录数比它的连接数少二时,它就知道目录中的其他条目
              并非目录(而是目录树中的叶(`leaf')节点)。除非需要检索的是这个叶节点,否则 没必要去处理它。这样可以带来很大的搜索速度提升。
       -version, --version
              打印find的版本号然后退出。
       -xdev  不进入处于其他文件系统之上的目录。
       
     
     
     
     
       
[root@localhost /]# find --help
用法: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
默认路径为当前目录;默认表达式为 -print
表达式可能由下列成份组成:操作符、选项、测试表达式以及动作:
操作符 (优先级递减;未做任何指定时默认使用 -and):
      ( EXPR )   ! EXPR   -not EXPR   EXPR1 -a EXPR2   EXPR1 -and EXPR2
      EXPR1 -o EXPR2   EXPR1 -or EXPR2   EXPR1 , EXPR2
positional options (always true): -daystart -follow -regextype
normal options (always true, specified before other expressions):
      -depth --help -maxdepth LEVELS -mindepth LEVELS -mount -noleaf
      --version -xautofs -xdev -ignore_readdir_race -noignore_readdir_race
比较测试 (N 可以是 +N 或 -N 或 N): -amin N -anewer FILE -atime N -cmin N
      -cnewer 文件 -ctime N -empty -false -fstype 类型 -gid N -group 名称
      -ilname 匹配模式 -iname 匹配模式 -inum N -ipath 匹配模式 -iregex 匹配模式
      -links N -lname 匹配模式 -mmin N -mtime N -name 匹配模式 -newer 文件
      -nouser -nogroup -path PATTERN -perm [-/]MODE -regex PATTERN
      -readable -writable -executable
      -wholename PATTERN -size N[bcwkMG] -true -type [bcdpflsD] -uid N
      -used N -user NAME -xtype [bcdpfls]
      -context 文本
操作: -delete -print0 -printf 格式 -fprintf 文件 格式 -print 
      -fprint0 文件 -fprint 文件 -ls -fls 文件 -prune -quit
      -exec 命令 ; -exec 命令 {} + -ok 命令 ;
      -execdir 命令 ; -execdir 命令 {} + -okdir 命令 ;
通过 findutils 错误报告页 http://savannah.gnu.org/ 报告错误及跟踪修定过程。如果您无法浏览网页,请发电子邮件至 <bug-findutils@gnu.org>。
[root@localhost /]#  
使用man工具查看man本身的手册信息,并保持为man.txt文本文件
[root@localhost /]# man man | col -b > man.txt
<standard input>:114: warning [p 1, 7.2i]: cannot adjust line
<standard input>:118: warning [p 1, 7.7i]: cannot adjust line
<standard input>:183: warning [p 2, 2.7i]: cannot adjust line
<standard input>:184: warning [p 2, 2.8i]: cannot adjust line
<standard input>:185: warning [p 2, 3.0i]: cannot adjust line
[root@localhost /]# 
[root@localhost /]# ls
123.mp4  bin  boot  dev  etc  home  lib  lib64  man.txt  media  mkfile  mnt  opt  proc  public_html  root  run  sbin  srv  sys  tmp  usr  var
[root@localhost /]# cat man.txt
man(1)                  General Commands Manual                  man(1)
NAME
       man - 格式化并显示在线帮助手册页
       manpath - 定义用户查找man手册页的路径
总
       man  [-acdfFhkKtwW] [-m 系统名] [-p <前处理程序>] [-C <配置文件>] [-M <路径>] [-P <浏览方式>] [-S <区段清单>] [区段名称] 帮助主题 ...
描
       man   格式化并显示在线帮助手册页面。此版本支持 MANPATH       和       (
       手册页并决定使用哪个程序来显示此格式的页面。如果定义了区段,   man      将只查找在指定区段内的文档。你也可以通过命令行或环境变量来指定查找区段
       的顺序和预定义将要执行的程序。如果主题中有“/”符号,则将其作为文件名的一部分处理   ,也就是说你可以用   man  ./foo.5  也可以用  man  /cd/foo/bar.1.gz
       来
选
       -C 配
        定义man.conf供使用;默认使用的是 /etc/man.config 。(参见 man.conf(5))
       -M 路
        定义一组查找man手册页的目录。如果没有指定此参数,系统环境变量   MANPATH将
        文件中指定的查找。一个空的 MANPATH 子字 符串表示使用默认清单。
       -P 浏
        定义浏览的方式。此选项将覆盖     MANPAGER    环境变量(此变量将覆盖    PAGER    变量)。若不指定   此参数,则使用    MANPAGER 或    PAGER
        环境变量中的设置。此选项的预设的显示方式为 /usr/bin/less-is。
       -S 区
        该清单是一组用冒号分隔的欲查找的手册清单。此选项将覆盖              MANSECT           环境变量。
        有些指令或程序可能有一个以上的主题,它们位于不同的区段中。因此,要查看较后的区 段,你可以在此指定 man 查找区段的顺序。具体区段划分如下所示:
        区段1:用户指令
        区段2:系统调用
        区段3:程序库调用
        区段4:设备
        区段5:文件格式
        区段6:游戏
        区段7:杂项
        区段8:系统指令
        区段9:内核内部指令
        区段n:Tcl或Tk指令
       -a     默认情况下,man在显示完每一个所查到的man手册页时会自动退出程序。而使用此选项
        ,则可使man显示所有与此主题相匹配的手册页内容,而不仅仅是第一项。
       -c     即使已存在最近已排版过的帮助文件(即以前曾查询过该主题的帮助文档),使用该参
        数后仍会再次执行一次排版操作。此参数适用于已排版过的帮助文件已损坏或屏幕的行列数有 改变时。
       -d     不显示帮助文档的具体内容,只显示调试排错信息。
       -D     既显示帮助文档内容,同时又显示调试排错信息。
       -f     相当于运行whatis 的操作。即:显示工具指令与工具程序的简单说明。
       -F" 或
        只进行格式化操作,而不真正的显示出来。
       -h     显示man的语法和参数说明,执行完成后退出程序。
       -k     查当于使用 apropos 命令。
       -K     在所有的帮助文件中查找包含有指定关键字的帮助文档。此操作可能很慢,所以在使用             此参数时最好配合-s
        的参数来查找指定区段。(这只是一个粗略的概念,在作者本人的机器 上每分钟可查500个man文档。)
       -m     系统名 定义所要查找的man文档所属的系统名。
       -p     字串                   定义在排版帮助文件这前所要执行的预处理程序的次序。不是所有的安装都有完整预处理
        程序组。一般有6个预处理程序,它们是:eqn(e)、grap(g)、pic(p)、tbl(t)、vgrind(v)和 reger(r)。此参数将覆盖环境变量MANROFFSEQ。
       -t     使用     /usr/bin/groff   - Tps -     mandoc   来排版man手册页,并输出到标准输出。从    /usr/bin/groff    -    Tpa  -    madoc
        输出的内容可能需要某些其它过滤才能真正输出到标准输出打印。
       -w" 或
        不显示帮助文档的具体内容而只显示相应帮助主题文件的位置。如果没有给定参数,则将      在标准输出显示一组由man所查到的相匹配的man
        文档所在目录。如果命令manpath是一个到m an的链接,那么执行“manpath”就相当于执行“man --path”。
       -W     相当于-w参数,但所显示的内容以分行方式显示。此参数方便其它指定或程序对其输出 做进一步处理,如: man -aW man | xargs ls -l
CAT页
       Man     会试着对所查的文档进行保存,为的是便于下次使用此帮助页时可节约格式化时间。传    统上,被格式化的DIR/manX文档会被存储在DIR/catX中,但你可以在
       /etc/man.config 配置文 件中指定其它的目录。如果所需的cat目录不存在时,系统就不对格式化后的man文档进行保存 。
       对于使用man命令的人,man命令可能对其进行setuid的操作。因此,如果一个cat目录属于
       man并且其模式是0755(只有man对其有写的权限),而且,cat文件也属于man和其模式是064
       4或0444(只有man对其有写权限或根本就没有写权限),则普通用就不能更改cat文档页,也
       不能在此目录中存放其它文件。而如果man没有执行setuid的操作,那么,为了能使所有用户 都能存放cat页到cat目录,则必须将这个cat目录设置成0777模式。
       参数 -c 可以强制生成一个新的man页,既使已经有一个cat页存在。
环
       MANPATH
        如果 MANPATH 有定义,那么它的值将在查找man文档页时做为搜索路径来使用。
       MANROFFSEQ
        如果          MANROFFSEQ           有定义,则此变量的值将用来决定在nroff或troff执行前将要执行的预处
        理程序的次序。默认情况下,手册页会在nroff处理前选取进行表格处理。
       MANSECT
        如果 MANSECT 有定义,它的值将决定man有搜索时的查找区段。
       MANWIDTH
        如果MANWIDTH有定义,它的值将决定显示man手册页时的宽度。否则,将是以全屏的方式来 显示。
       MANPAGER
        如果         MANPAGER       有定义,它的值将指定用来显示man文档的程序。如果没有在此指定,那么将
        使用由PAGER变量指定的程序。如果还是没有指定,那么会默认使用/usr/bin/less -is 。
       LANG   如果        LANG        有定义,它的值将指定man在查找文档时首先查找的子目录。因此,命令“LAN      G=dk     man     1
        foo”会使man在查找man页时首先查找../dk/man1/foo.1,如果在其中没有找到相 关文档,则查找../man/foo.1,此目录是由查找路径指定的。
       NLAPATH,
        环境变量    NLAPATH    和       LC_MESSAGES     (或当后一个不存在时使用       LANG       )充当了定位文档目录的
        角色。(但英文信息是编译进命令的,所以针对英文而言,就没有目录存在)。注意,象col (1)这样被man调用的程序也使用象 LC_CTYPE 这样的变量。
       PATH   变量 PATH 是在解释查找man手册页路径时使用的。
       SYSTEM 变量 SYSTEM 是用来得到默认的系统名(用-m参数可以得到同样的效果)。
另
       apropos(1),whatis(1),less(1),groff(1).
BUGS
       选项 -t     只能使用在装有类troff程序的环境中。    如果在你的显示中出现高亮度的255或<AD>这样的字符而不是连字符,请在你的配置文件中   写入“LESS‐
       CHARSET=latin1”这样的环境变量。
技
       如果你在你的        .emacs         文件中加入(global-set-key[(f1)](lambda()(interactive)(manuale          ntry(current-
       word))))这一行,则当你按F1键时会自动跳出当前鼠标指向的相应程序的man手册页。
[中
       徐
       译者: 所罗门 <solomen@email.com.cn>
[中
       2003/05/13 第一版
《
       http://cmpp.linuxforum.net
                     September 2, 1995                     man(1)
[root@localhost /]# 









