zoukankan      html  css  js  c++  java
  • linux文件创建、查看、编辑命令

    一、创建文件命令

    1、touch命令

    linux的touch命令不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件。
    touch   [-acm][-r   ref_file(参照文件)|-t   time(时间值)]   file(文件名)
    example:
    touch file1.txt 更新file1.txt的存取和修改时间
    touch -c file1.txt 如果file1.txt不存在,不创建文件
    touch -r ref_file file1.txt 更新file1.txt的时间戳和ref+file相同
    touch -t 0811142234.50 file1.txt 设定文件的时间错为08年11月14日22点34分40秒

    touch filename  就创建了一个文件名为filename的空文本文件

    2、vi

    举例新建一个1.txt文本文件。
    直接#vi 1.txt就可以了。

    3、cp拷贝

    4、mv 

    二、查看文件命令

    1、cat(只查看)

    cat(“concatenate”的缩写)命令用于连接并显示指定的一个或多个文件的内容,它的使用权限是所有用户。

    用法: cat [options] 文件1 文件2……

    若使用管道接收要显示信息,则cat后面不接文件名。

    [options]主要参数

    -n:由第一行开始对所有输出的行数编号。

    -b:和-n相似,只不过对于空白行不编号。

    -s:当遇到有连续两行以上的空白行时,就代换为一行的空白行。

    这条命令可以顺序地读取多个文件,用法:cat file1 file2

    例A: 把 textfile1 的文件内容加上行号后输入 textfile2 这个文件里
    #cat -n textfile1 > textfile2

    例B: 把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3
    #cat -b textfile1 textfile2 >> textfile3

    例C:显示/etc/fstab文件的内容。
    #cat /etc/fstab

    cat 对于内容极大的文件来说,可以通过管道|传送到more 工具,然后一页一页的查看; 
    [root@localhost ~]# cat /etc/fstab /etc/profile | more 

    2、vi(查看和编辑)
    如: vi /etc/fstab

    3、head 查看文件头部内容命令。
    命令格式:# head [[选项]] <文件列表>
    常用选项:

    -c,--bytes=SIZE ,打印文件开头的SIZE字节内容。

    -n,--lines=NUMBER,打印文件开头的NUMBER行,默认是输出前面10行。

    例子:

    head -c 300 /etc/inittab 显示前300个字节

    head -n 5 /etc/inittab 显示前5行

    head /etc/inittab 显示前10行

    4、tail 查看文件尾部内容命令。
    命令格式:# tail [选项] <文件列表>
    常用选项:
    -c,--bytes=SIZE ,打印文件最后的SIZE字节内容。

    -n,--lines=NUMBER,打印文件最后的NUMBER行,默认是输出后面10行。

    例子:
    tail /etc/inittab 显示最后10行
    tail -n 5 /etc/inittab 显示最后5行

    tail -c 10 /etc/inittab显示最后10个字节


    5、more分页显示文件命令

    命令格式:more [选项] <文件名>

    若使用管道接收要显示信息,则more后面不接文件名。

    常用选项:

    -n,用来建立能显示n行的显示屏窗口。

    -d,显示操作提示符:“Press space to continue,'q' quit",以代替more的默认提示符。

    -s,把连续的空行压缩为一行。

    more的动作指令:

    Enter 向下n行,需要定义,默认为1行; 

    Ctrl f(或空格键) 向下滚动一屏; 

    Ctrl b 返回上一屏; 

    = 输出当前行的行号; 

    v 调用vi编辑器; 

    q 退出more 

    例子: 

    [root@localhost ~]# more -dc /etc/profile 注:显示提示,并从终端或控制台顶部显示; 

     [root@localhost ~]# more -4 /etc/profile 注:每屏显示4行; 

    [root@localhost ~]# more /MAIL /etc/profile 注:从profile中的第一个MAIL单词的前两行开始显示; 

     其它命令通过管道和more结合的运用例子; 

    比如我们列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。这得和管道 | 结合起来,比如: 

    [root@localhost ~]# ls -l /etc |more  

    6、less分页显示文件命令
    less 工具也是对文件或其它输出进行分页显示的工具,功能与more一样,但功能更强大,应该说是linux正统查看文件内容的工具,功能极其强大;由于less的内容太多,把最常用的介绍一下; 

    less的语法格式; 

    less [参数] 文件 

    若使用管道接收要显示信息,则less后面不接文件名。

    -i 搜索时忽略大小写;除非搜索串中包含大写字母; 

    -I 搜索时忽略大小写,除非搜索串中包含小写字母; 

    -m 显示读取文件的百分比; 

    -M 显法读取文件的百分比、行号及总行数; 

    -N 在每行前输出行号; 

    -p pattern 搜索pattern;比如在/etc/profile搜索单词MAIL,就用 less -p MAIL /etc/profile 

    -s 把连续多个空白行作为一个空白行显示; 

    比如:显示/etc/profile的内容时,让其显示行号; 

    [root@localhost ~]# less -N /etc/profile 

    less的动作命令; 

    回车键 向下移动一行; 

    y 向上移动一行; 

    空格键 向下滚动一屏; 

    b 向上滚动一屏; 

    d 向下滚动半屏; 

    h less的帮助; 

    u 向上滚动半屏; 

    w 可以指定显示哪行开始显示,是从指定数字的下一行显示;比如指定的是6,那就从第7行显示; 

    g 跳到第一行; 

    G 跳到最后一行; 

    p n% 跳到n%,比如 10%,也就是说比整个文件内容的10%处开始显示; 

    /pattern 搜索pattern,比如/MAIL表示在文件中搜索MAIL单词; 

    v 调用vi编辑器; 

    q 退出less 

    三、编辑文件命令

     vi

     1、进入vi的命令

         vi filename :打开或新建文件,并将光标置于第一行首

         vi +n filename :打开文件,并将光标置于第n行首

        vi + filename :打开文件,并将光标置于最后一行首

        vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

        vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

        vi filename....filename :打开多个文件,依次进行编辑

      2、移动光标类命令

      h :光标左移一个字符

      l :光标右移一个字符

      space:光标右移一个字符

      Backspace:光标左移一个字符

      k或Ctrl+p:光标上移一行

      j或Ctrl+n :光标下移一行

      Enter :光标下移一行

      w或W :光标右移一个字至字首

      b或B :光标左移一个字至字首

      e或E :光标右移一个字至字尾

      ) :光标移至句尾

      ( :光标移至句首

      }:光标移至段落开头

      {:光标移至段落结尾

      nG:光标移至第n行首

      n+:光标下移n行

      n-:光标上移n行

      n$:光标移至第n行尾

      H :光标移至屏幕顶行

      M :光标移至屏幕中间行

      L :光标移至屏幕最后行

      0:(注意是数字零)光标移至当前行首

      $:光标移至当前行尾

     3、屏幕翻滚类命令

      Ctrl+u:向文件首翻半屏

      Ctrl+d:向文件尾翻半屏

      Ctrl+f:向文件尾翻一屏

      Ctrl+b;向文件首翻一屏

      nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

     4、插入文本类命令

      i :在光标前

      I :在当前行首

      a:光标后

      A:在当前行尾

      o:在当前行之下新开一行

      O:在当前行之上新开一行

      r:替换当前字符

      R:替换当前字符及其后的字符,直至按ESC键

      s:从当前光标位置处开始,以输入的文本替代指定数目的字符

      S:删除指定数目的行,并以所输入文本代替之

      ncw或nCW:修改指定数目的字

      nCC:修改指定数目的行

     5、删除命令

      ndw或ndW:删除光标处开始及其后的n-1个字

      do:删至行首

      d$:删至行尾

      ndd:删除当前行及其后n-1行

      x或X:删除一个字符,x删除光标后的,而X删除光标前的

      Ctrl+u:删除输入方式下所输入的文本

     6、搜索及替换命令

      /pattern:从光标开始处向文件尾搜索pattern

      ?pattern:从光标开始处向文件首搜索pattern

      n:在同一方向重复上一次搜索命令

      N:在反方向上重复上一次搜索命令

      :s/p1/p2/g:将当前行中所有p1均用p2替代

      :n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代

      :g/p1/s//p2/g:将文件中所有p1均用p2替换

     7、vi命令使用举例

      例一:创建文件a.txt。

      vi a.txt

      Hello everyone!

         退出方法是:编辑完成后按ESC,然后输入:q就是退出;还有:wq是保存后退出,加感叹号是表示强制

  • 相关阅读:
    Shell入门
    Linux基本的指令操作
    python网络爬虫入门范例
    Android中scrollview的scrollto方法不起作用的解决办法
    (转)Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形)
    unable to load class org.codehaus.groovy.runtime.typehandling.shorttypehandling解决方法
    JavaScript运行原理
    AsyncTask的doInBackground不工作原因分析
    Android中的多线程与异步任务
    使用webview加载网页时session同步
  • 原文地址:https://www.cnblogs.com/wuxiang/p/4800240.html
Copyright © 2011-2022 走看看