文件管理,文本处理,nano编辑器

文件管理,文本处理,nano编辑器

1,文件管理

  cp, mv, rm

  cp: 复制命令    

    cp [option] ... [-T] source dest
    cp [option] ... source... directory
    cp [option] ... -t directory source...

    cp SRC(源) DEST(目标)

      SRC是文件
        (1)如果目标文件不存在,则新建DEST(目标),并将SRC(源文件)中的内容填充到DEST(目标文件)中;

        (2)如果目录存在:

          如果DEST是文件,将SRC中的内容覆盖至DEST中;

            此时建议为cp命令使用 -i 选项,提示当存在时,是否要进行覆盖。
          如果DEST是目录,在目标目录下新建与原文件同名的文件,并将原文件中的内容填充到新文件中;

    cp SRC... DEST

      SRC...: 多个文件

        DEST必须存在,且为目录,其他情形均为出错;

    cp SRC DEST

      SRC是目录:

        此时使用递归选项:-r

        如果目标文件不存在,则创建指定目录,复制源目录中所有文件到目标中

        如果目标存在

          如果目标是文件,则报错
          如果目标是目录,复制源目录到目标目录中;

 

          注意: 如果SRC是多个,就不区分是文件还是目录了,如果SRC都是文件,复制不需要 -r ;

 

              如果SRC是多个,其中里面有目录,就要使用 -r ;

 

    常用选项:

      -i:交互式;询问用户命令是否继续进行;(比如提示用户目标存在是否覆盖)

      -r,-R:递归复制目录及内部的所有内容

      -a: 归档复制 相当于-dR --preserver=all 保留文件原属性

        -d:  --no-dereference --preserv=links 不追踪符号链接

        --preserver[=ATTR_LIST] 保留文件属性,默认保留mode ownership timestamp三个属性
          mode:权限
          ownership:属主属组
          timestamp:时间戳
          links:链接属性
          xattr:扩展属性
          context:安全上下文
          all:以上所有

      -p: 保留权限 属主,属组,时间戳三个属性 --preserver=mode,ownership,timestamp。就直接相当于 --preserver
      -v: --verbos 显示详细信息

      -f: --force 强制进行

  mv: move, 移动文件

    mv [option]... [-T] source dest
    mv [option]... source ... directory
    mv [option]... -t directory source...

    如果源文件是单个文件;
      如果目标不存在,将文件移动到目标目录,并将文件名重命名为目标文件,相当于剪切

      如果目标是文件,将源文件内容覆盖到目标文件中,然后删除源文件;
    如果目标是目录,则将源文件移动到目标目录中,相当于剪切

    如果源是多个文件,

      如果目标是目录,则将源文件移动到目标目录中;

      如果目标是文件,则报错;

      如果目标不存在,则报错;

    常用选项:

      -i: 交互式,覆盖现有文件之间先询问用户

      -f: 强制移动,强行覆盖现有文件

  rm: remove 删除文件

    rm [option]... file...

    常用选项:

      -i 交互式,删除文件先询问用户是否确认删除

      -f 强制删除

      -r 递归删除,用于删除目录内的文件及目录本身

      -rf 强制递归删除,用于删除目录内的文件及目录本身

2, nano: 文本编辑器, 全屏编辑器

  nano的快捷键

    ctrl+g 获取帮助;

    ctrl+x 退出编辑器;

    ctrl+o 保存;

    ctrl+r 从其他文件读入数据;

    ctrl+w 搜索字符串;

    ctrl+y 上一页;

    ctrl+v 下一页;

    ctrl+k 剪切文本;

    ctrl+u 粘贴文本;

    ctrl+c 定位光标所在位置

3,文本处理工具:

  wc 命令

    输出文件中的行数,单词数,字节数

    wc [option]... [file]...  默认显示行数,单词数和字节数,如想单独显示,可加如下选项。

      -l:lines行数
      -w:words单词数
      -c:characters字节数

  cut 分割命令

    在文件的每一行中提取片断

    cut [option]... [file]...
      -d DELIMITER:  指明字段分隔符,在-d后面不加空格填充一个字符指明字段分隔符

              DELIMITER:指明的字段分割符
      -f FILEDS: 字段,FILEDS=如下选项
        #:第#个字段
        #,#[,#] 离散的多个字段,例如 1,3,6表示第1,3,6字段
        #-# : 连续的多个字段,例如1-6表示1到6个字段
        混合使用:1-3,7

          --output-delimiter=STRING 指定输出时的分隔符         

            
例如:[root@localhost ~]# head -3 /etc/passwd | cut -d: -f1,3,7 --output-delimiter=" "
root 0 /bin/bash
bin 1 /sbin/nologin
daemon 2 /sbin/nologin
View Code

            [root@iZwz ~]# ifconfig | head -2 | cut -d: -f2 | tail -1 | cut -d' ' -f1
            ***.**.***.**      *查找本机的IP地址*

  sort 排序命令

    对文本文件的行默认进行字符大小排序

    sort [option]... [file]...
      默认比较每一行的第一个字符进行升序排序,后第二个。。

      -f:忽略字符大小写

      -r: 逆序排序

      -t DELIMITER: 字段分隔符(和cut类似)
      -k #: 以指定的字段为标准排序

      -n: 以数值大小进行排序

      -u: uniq 排序后去重,连续且完全相同方为重复,

       例如:以: 为字段分隔符,第二个字段为标准,并且以数值大小为排序          

            
[root@localhost ~]# cat /tmp/x/a/a.txt
a:2
b:4
c:1
d:3
[root@localhost ~]# sort -t: -k2 -n /tmp/x/a/a.txt
c:1
a:2
d:3
b:4     
View Code

  uniq命令

    uniq [option]... [file]...
    注意:连续且完全相同方为重复

    -c: 显示每行重复出现的次数

    -d: 仅显示重复过的行  

    -u: 仅显示不曾重复的行

      练习:
      1、以冒号分隔,取出/etc/passwd文件的第6行至第10行,并将这些信息按第三个字段的数值大小进行排序,最后仅显示的各自的第一个字段

          
head -10 /etc/passwd | tail -5 | sort -t: -k3 -n | cut -d: -f1

[root@localhost ~]# head -10 /etc/passwd | tail -5 | sort -t: -k3 -n | cut -d: -f1
sync
shutdown
halt
mail
uucp
View Code

 

 

 

posted @ 2018-05-19 09:26  Qiuma  阅读(454)  评论(0编辑  收藏  举报
TOP ↑