zoukankan      html  css  js  c++  java
  • Linux常用命令1对文件进行查看、复制、移动和分割

    基于Linux的操作系统是一种自由和开放源代码的类UNIX操作系统。

    Linux的几大特点决定了它的不可代替和无法超越性:

    (1)免费的/开源的;(2)支持多线程/多用户;   
    (3)安全性好;     (4)对内存和文件管理有自己优越的方法。
    

    Linux常用的命令###

    路径的表示方法###

    cd :change directory的缩写,用于改变当前路径;

    语法:cd [相对路径或绝对路径]
    

    绝对路径:cd /etc :表示从根目录开始进入(只要以/开始都是绝对路径)

    相对路径:cd ../etc:表示返回到上一级目录然后进入etc目录。

    cd ~:回到自己的家目录。
    

    创建/删除/查看目录###

    【1】 mkdir:创建目录。

    语法:mkdir [-option];其常用参数有:-p
    
    -p :当建立的目录的父目录不在时,同时建立父目录(mkdir -p test/test1)
    

    【2】 rmdir: 用于删除目录;

    语法:rmdir 目录名称。
    
    *但是得注意目录必须为空。
    

    【3】rm :删除;

    语法:rm [-option];常用的参数有:-f,-r
    
    -f:强制删除,不提示用户是否删除的信息。
    
    -r:循环删除,常用于删除目录。
    

    【4】 pwd:用于显示当前所在的目录;

     语法:pwd.
    

    【5】 ls :用于显示指定目录下的内容;

     语法:ls [-option] [file];其常用参数有:-a ,-A ,-l
    
    -a:显示所有的文件和目录,包含隐藏文件和目录。
    
    -A:显示所有的文件和目录,包含隐藏文件和目录,但不显示“.”和“..”目录。
    
    -l:显示文件和目录的完整属性信息。(长列表格式)
    
    *注意:.表示当前目录;  ..表示上一级目录。 两个短选项可合并。例如:-al (-a -l)
    

    复制/移动文件###

    【1】cp:复制粘贴;

    语法:cp [--option] 源目标;常用参数:-r
    
    -r:循环进行目录复制;例如:cp -r test abc:将当前目录下的test目录中的所有内容包括子目录均复制到abc目录下。
    

    【2】mv: 用于移动文件或目录;

    语法:mv 源 目标
    
    例如:mv test abc :将当前目录下的test目录移动到abc目录下。
    

    查找文件的位置###

    【1】which:查找可执行文件的位置,该命令通过环境变量PATH所设置的路径进行搜索

    语法:which 文件名
    

    【2】whereis:根据设定好的目录进行查找,但是和which不同,它并不是使用PATH环境变量,而是自定义的一组目录。

    语法:whereis [-option] 文件名;常用参数:-b;-m
    
    -b:只查找二进制文件。
    
    -m:只找说明文件。
    

    【3】find:find命令可以对指定的目录以及其所有的子目录进行文件搜索。

    语法:find [path] [-option] 文件名;常用参数-name file ; -type file
    
    例子:比如我们现在想找一个文件,只记得它在/etc目录下,是否在某个子目录下却不清楚了,
    
         名字也记不清了,只知道名字中有http这个单词,我们可以用如下格式:
         find /etc -name '*http*'
    
         find /etc -type '.txt'
    

    但是需要注意的是find命令在查找分数据时直接查找硬盘数据,比较消耗硬盘,所以我们最好不用find命令,可以用locate代替。

    【4】locate:查找文件,比find命令快很多,因为locate命令时从已建立的数据库/var/lib/slocate中查找数据,而不是直接在硬盘上查找,相当于查找快照的一种方式。

    语法:locate 文件名
    

    同样locate也有它的弊端,有时候我们查找到的是已经被删除的数据,或者刚刚新建的文件我们找不到,这时由于数据库文件的更新机制导致的,我们可以用updatedb命令进行手动更新,然后再用locate命令进行查找。

    编辑文件及查看文件内容###

    【1】vi:用于编辑文本文件。

    vi编辑器是Linux下最有名的编辑器,也是我们学习Linux必须掌握的工具,在Unix下也可以使用vi进行程序的开发。

    语法:vi 文件名。
    

    vi分为三种模式:一般模式、编辑模式、命令行模式。

    • 一般模式:当我们进入这个文件的时候,就是一般模式,我们可以上下移动光标,(只能用键盘来移动,鼠标是不管用的),可以删除某个字符,删除某行,复制、粘贴一行或者多行。

    • 编辑模式:一般模式下,我们是不可以修改字符的,只能到编辑模式,按(i)键即可进入编辑模式,当进入编辑模式时,下方会有一行字:INSERT;这时我们就可以对文件进行编辑了,我们若想回到一般模式,需要按(esc)键。

    • 命令行模式:在一般模式下输入(:),即可进入命令模式。这时我们可以对文件进行加行号显示,定位到某一行,保存退出,不保存退出等等。

      在命令行模式中,有几个常用的命令:

      :wq:保存并退出;

      :q!:不保存退出;

      :set nu:在每行的行首显示行号;

      :n:n表示一个数字,代表你想定位到n 行。

    使用vi编辑器在Linux下,编写Hello.java的程序,可以在Linux下运行。

    开发步骤:

    (1)Vi Hello.java回车;

    (2)输入i(进入插入模式),输入i之后后面会出现INSERT,这时候才能写入东西,否则不 能写入任何东西;

    (3)输入esc键(进入命令模式);

    (4)输入冒号(:): 这时有两个选择:1、保存并退出(wq)。2、退出但不保存(q!);

    (5)编译Hello.java(javac Hello.java);

    (6)运行程序(java Hello)。

    【2】cat :查看文件内容,只能查看文本文件内容。

    语法:cat [-option] 文件名;常用参数:-n,-b
    
    -n:连行号一起显示在屏幕上。
    
    -b:连行号一起显示在屏幕上,但空行不算。
    

    【3】more :查看文件内容;

    语法:more 文件名。
    

    more命令和cat命令相似,同样是在屏幕上显示文件内容,但是如果文件内容太多,超过40行,cat会一闪而过,more则会在显示完一屏内容后停下,等待用户往下翻,下翻命令可以用回车(单行下翻)或Ctrl+f(整页下翻)。如果要退出则按q键。

    【4】head :查看文件内容;

    语法:head [-option] 文件名;常用参数:-n
    
    -n:指定显示多少行。如果不加参数-n,则默认显示文件的前10行内容。
    
    例如:head -3 abc:显示abc文件的前3行内容。
    

    【5】tail:查看文件内容 ;

    语法:tail [-option] 文件名;常用参数:-n
    
    -n:指定显示多少行。如果不加参数-n,则默认显示文件的后10行内容。
    

    字符串与文件内容处理###

    【1】cut:用于截取文件内容。

    语法:cut [-option] 文件名;常用参数:-c, -f ,-d.
    
    -c:参数后面跟数字,表示指定第几个字符;
    
    -f:参数后面跟数字,表示指定第几个区;
    
    -d:后面跟分隔用的字符,如果不加该参数,默认为tab。
    
    例如:我们创建了一个文件test,内容是abc 2015-3-08 15:3:16;我们的目的是取出2015,步骤如下:
    
    (1)先用-进行分割,取第一部分:cut -d "-" -f 1 test。这时的结果是abc 2015;
    
     (2)在第一部分的基础上,取出2015:cut -d "-" -f 1 test | cut -d " " -f 2。
    

    需要重点指出来的是,我们在截取文件内容的时候,会用到管道这个命令,用 | 来表示,它的意思是把第一次的输出内容作为第二次的输入内容。可无限制的进行连接

    【2】grep: 查看文件里面的部分内容。

    语法:grep [-option] 文件名;常用参数:-i,-v,-n,-x
    
    -n:在输出符合要求的行的同时连同行号一起输出;
    
    -i:忽略大小写;
    
    -v:打印不符合要求的行;	
    
    -x:查询一整行一模一样匹配的项。
    

    我们看三个例子:

    例子1:grep -n -i "hello" abc :在文件abc中不区分大小写的查找有内容hello的这一整行,并打印行号。
    
    例子2:grep -n -i "hello" abc | grep -n "linux" :从已经在文件abc中查找出来的带有hello字符串的所有行中,再进行查找有Linux字符串的行。
    
    例子3:grep -n -i "hello" abc | grep -v "linux" :从已经在文件abc中查找出来的带有hello字符串的所有行中,再进行查找没有Linux(不符合要求的)字符串的行。
  • 相关阅读:
    三范式
    作用域
    函数传参
    js数据类型
    纯css小图标
    js生成div
    js模拟微信聊天窗口
    js图片切换
    js this指向
    常用实体字符
  • 原文地址:https://www.cnblogs.com/shijiayi/p/4430784.html
Copyright © 2011-2022 走看看