Linux命令

命令提示符

打开终端时,我们输入信息的左边就是命令提示符,例如:
在这里插入图片描述
Linux命令提示符结构:
普通用户boy:boy@boy-virtual-machine:/$
根用户root:root@boy-virtual-machine:/#
@前面的是当前用户名boy,@后面到:的是主机名boy-virtual-machine,/是当前的目录,最后一个符号$表示当前的用户是普通用户,如果是root用户则为#。

命令格式

由三个部分组成:command [-option] [parameter]
在这里插入图片描述
command即为当前执行的命令,[-option]为命令对应的选项,根据实际的命令搭配使用,[parameter]为参数。
  说明:
    ① [ ]中括号表示 该部分可选,可有可无,需要根据命令的实际需要而添加
    ② 命令、选项、参数都以空格分隔,不管几个空格都算一个空格
    ③ 命令输入完毕后,按回车“Enter”键启动

命令相关单词

linux的命令其实都是一些英文的缩写,如下:
在这里插入图片描述

路径

Linux下的根目录为“/”,从根目录下出发可以找到任意目录、任意文件。从根目录开始表示目录或文件的方法称为“绝对路径”。比如:

   /home/book   
   /home/book/1.txt   
   /bin/pwd   

有时候使用绝对路径太过麻烦,可以使用相对路径。假设当前正位于/home/book目录下,那么:

   ./1.txt      表示当前目录下的1.txt,即 /home/book/1.txt;“.”表示当前目录   
   ../book/1.txt   表示当前目录的上一级目录里,book子目录下的1.txt   
            “/home/book/..”就是”/home”目录,”..”表示上一级目录   

使用相对路径时:

.表示当前目录
..表示上一级目录

目录/文件操作命令

1.pwd

pwd用于打印出当前的所在文件路径。
在这里插入图片描述

2.cd

cd是切换当前文件目录
在这里插入图片描述
cd的其他用法:

   $ cd  -   // 进入上次目录, 比如先进入a目录再进入b目录,执行此命令后即回到a目录   
   $ cd  ~   // 进入家目录   
3.mkdir

make directory创建新的文件夹/目录
在这里插入图片描述
-p参数是创建带子目录的文件夹。

4.rmdir

remove directory即移除当前文件夹
在这里插入图片描述

5.ls

list列出当前目录下的内容
在这里插入图片描述
cd可以带的参数较多:-l -a - h
-l:long,带上这个参数可以显示出完成的文件信息。
-a:all,显示所有的文件包含隐藏文件。
-h:human readable,按照K/M/G的形式显示当前的文件大小。
在这里插入图片描述

6.cp

copy复制文件
在这里插入图片描述
复制目录时,常用如下命令:

 $ cp  -rfd  dir_a  dir_b   

参数说明:

    -r:recursive,递归地,即复制所有文件
    -f:force,强制覆盖
    -d:如果源文件为链接文件,也只是把它作为链接文件复制过去,而不是复制实际文件
7.rm

remove删除
在这里插入图片描述
也可以用rm删除文件夹,需要加上参数-rf:rm -rf dirx

8.cat

cat 命令用于连接文件并打印到标准输出设备上。

cat [-AbeEnstTuv] [--help] [--version] fileName

参数说明:

  • -n 或 --number:由 1 开始对所有输出的行数编号。
  • -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
  • -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
  • -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
  • -E 或 --show-ends : 在每行结束处显示 $。
  • -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
  • -A, --show-all:等价于 -vET。
  • -e:等价于"-vE"选项;
  • -t:等价于"-vT"选项;

一般使用cat查看当前文档的内容。
在这里插入图片描述

9.touch

Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
在这里插入图片描述

查找/搜索命令

1.find

使用find命令查找文件一般的格式:find 目录名 选项 查找条件

举例,按照名字查找文件:$ find /home/book/dira/ -name " test1.txt "
  说明:
    a) /home/book/dira/指明了查找的路径。
    b)“-name”表明以名字来查找文件 。
    c)“test1.txt”,就指明查找名为“test1.txt”的文件。

举例,按照后缀查找所有的txt文件,同样使用name参数:
$ find /home/book/dira/ -name " *.txt "

举例,查找dira文件夹/文件:find /home/book/dira/ -name "dira"
注意:
1) 如果没有指定查找目录,则为当前目录。

  $ find . -name " *.txt "   //其中.代表当前路径。    
  $ find -name " *.txt "     //没加路径,默认是当前路径下查找。   

2) find还有一些高级的用法,如查找最近几天(几个小时)之内(之前)有变动的文件

  $ find  /home/book  -mtime -2      //查找/home目录下两天内有变动的文件。   
2.grep

grep是查找文件中符合条件的字符串,一般格式:

   grep [选项] [查找模式] [文件名] 

grep选项非常多,介绍一些常用的选项:

  • -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。
  • -i 或 --ignore-case : 忽略字符大小写的差别。
  • -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
  • -w 或 --word-regexp : 只显示全字符合的列。

grep -rn “字符串” 文件名 r(recursive):递归查找 n(number):显示目标位置的行号 字符串:要查找的字符串 文件名:要查找的目标文件,如果是*则表示查找当前目录下的所有文件和目录。举例:

  //在test1.txt中查找字符串abc grep -rn "abc" 在当前目录递归查找字符串abc   
  $ grep -n "abc" test1.txt    

注意:可以加入-w全字匹配。

可以在grep的结果中再次执行grep搜索,比如搜索包含有ABC的头文件,可执行如下命令:

  $ grep  “ABC”  *  -nR  |  grep “\.h”   

上述命令把第1个命令“grep “ABC” * -nR”通过管道传给第2个命令。即第2个命令在第1个命令的结果中搜索。

压缩/解压命令

压缩的目的: 在网络传递文件时,可以先将文件压缩,然后传递压缩后的文件,从而减少网络带宽。 接收到文件后,解压即可。
  压缩的类型有2种:有损压缩、无损压缩:
a. 有损压缩:如mp4视频文件,在压缩过程中减少了很多帧的数据,但是对观看者而言没有影响。当然mp3音乐文件也是有损压缩。
b. 无损压缩:如普通文件的压缩,为了保证信息的正确传递,不希望文件经过压缩或解压后,出现任何差异。
后面讲解的都是无损压缩。
  单个文件的压缩(解压)使用gzip 和bzip2 ,多个文件和目录使用tar。

1.gzip

gzip常用选项:

      -l(list)	   列出压缩文件的内容。   
      -k(keep)	   在压缩或解压时,保留输入文件。   
      -d(decompress)	将压缩文件进行解压缩。   

举例:
1) 查看压缩文件

   $ gzip -l  pwd.1.gz   

2) 解压文件

   $ gzip -kd pwd.1.gz   //该压缩文件是以.gz结尾的单个文件   

3) 压缩文件

   $ gzip -k mypwd.1   /得到了一个.gz结尾的压缩文件   

注意:
1)如果gzip不加任何选项,此时为压缩
压缩完该文件会生成后缀为.gz的压缩文件,并删除原来的文件。
所以,推荐使用gzip -k来压缩源文件,这样会保留原来的文件。
2)相同的文件内容,如果文件名不同,压缩后的大小也不同。
3)gzip只能压缩单个文件,不能压缩目录。

2.bzip2

常用选项:

   -k(keep)	在压缩或解压时,保留输入文件;    
   -d(decompress)	将压缩文件进行解压缩;   

压缩实例:

  $ bzip2 -k mypwd.1 得到一个.bz2后缀的压缩文。   

解压实例:

  $ bzip2 -kd mypwd.1.bz2 

注意:
1)bzip2不加任何选项也同样是进行压缩,使用bzip2压缩文件输出的文件后缀。为.bz2,使用-k参数可以保留压缩/解压的输入文件。
2)bzip也只能压缩单个文件,不能压缩目录。

3.tar

tar可以进行多个文件的压缩
tar常用选项:

   -c(create):表示创建用来生成文件包 。   
   -x:表示提取,从文件包中提取文件。   
   -t:可以查看压缩的文件。   
   -z:使用gzip方式进行处理,它与”c“结合就表示压缩,与”x“结合就表示解压缩。   
   -j:使用bzip2方式进行处理,它与”c“结合就表示压缩,与”x“结合就表示解压缩。    
   -v(verbose):详细报告tar处理的信息。   
   -f(file):表示文件,后面接着一个文件名。 -C <指定目录> 解压到指定目录。   

举例,tar打包、gzip压缩:
1)把目录dira压缩、打包为dira.tar.gz文件:

$ tar -czvf dira.tar.gz dira   

2)使用-t选项查看压缩文件:

$ tar tvf  dira.tar.gz   

3) 解压文件,可以用-C 指定解压到哪个目录:

$ tar xzvf dira.tar.gz             //解压到当前目录    
$ tar xzvf dira.tar.gz -C /home/book   //解压到/home/book。     

举例,tar打包、bzip2压缩:
1)把目录dira压缩、打包为dira.tar.bz2文件

$ tar cjvf dira.tar.bz2 dira 

2)查看压缩文件

$ tar tvf dira.tar.bz2  

3)解压文件,可以用-C 指定解压到哪个目录

$ tar xjvf dira.tar.bz2               //解压到当前目录:     
$ tar xjvf dira.tar.bz2 -C /home/book    //解压到/home/book  

总结
tar的-j-z选项分别是使用bzip2和gzip工具压缩/解压,一般需要加上-f,压缩时需要加上压缩后的文件名。

可以压缩多个文件,压缩目录。

网络命令

ifconfig

类似windows的ipconfig,查看网络、设置IP。
ifconfig常用选项:

   -a :显示所有网卡接口   
   up:激活网卡接口    
   down:关闭网卡接口   
   address:xxx.xxx.xxx.xxx,IP地址   

设置IP地址:
ens160是设置的网卡名,后面即为对应的IP地址。

   $ sudo ifconfig ens160 192.168.1.137   

其他命令

1.file

使用方法:

file filename
2.which和whereis

查找命令或者应用程序所在的位置。
使用方法:

 which   命令名/应用程序名   
 whereis  命令名/应用程序名。 

参考百问网的教程和菜鸟教程:
https://book.100ask.net/source/chaptertwo/ELADCMSecondEditionChapterTwo.html#id3
https://www.runoob.com/linux/linux-tutorial.html

Logo

更多推荐