linux培训笔记1

第五章 文件和目录的管理
  linux命令的基本格式

  #命令 [选项] [参数]

 

1、linux下的常用命令

  (1)ls    查看(列出)目录下的内容

     -l    查看文件详细信息

     drwxr-xr-x.      23        root      root     4096    5月  31 15:06     var

     文件类型和权限  文件链接数  文件所属用户  文件所属组  文件大小   文件创建时间     文件名称

     

     -h    带单位显示文件大小

     drwxr-xr-x.  2 root root 4.0K 5月  31 15:34 yum.repos.d

-R    递归显示目录内容

     

  (2)cd    改变(切换)当前工作目录

     #cd /etc/httpd/conf

     

     绝对路径:从根目录开始的路径,绝对路径只有一条

     相对路径:从当前目录开始的路径,相对路径会有多条

     .    表示当前目录

     ..   表示上一级目录

     #pwd

     /etc/httpd/conf

     

     例、当前路径为/etc/httpd/conf,分别使用绝对路径和相对路径进入/etc/httpd目录。

     #cd /etc/httpd

     #cd ..

     

     例:使用绝对路径和相对路径进入/var/log目录

     

     cd -    切换回上次的目录

     cd ~    进入用户家目录(主目录)

 

  (3)pwd   显示当前工作目录

 

  (4)tree  显示当前目录树

     #tree /

     ctrl+c   结束当前程序

 

  (5)mkdir

    #mkdir -p /myfile/music

    -p     当上级目录不存在时自动创建

    

  (6)du   显示目录所占磁盘空间

     #du -sh /etc

     #du -ah /var/log

     

     

  文件操作命令

  (7)touch  创建一个大小为0的文件   

     #touch 文件名

     

  (8)cp     复制文件

     #cp [-r] 源文件或目录 目标目录

     

     例:把/etc目录下文件名为yp.conf的文件复制到/myfile/dest目录下

     #cp /etc/yp.conf /myfile/dest

     

     例:将/etc目录下所有扩展名为conf的文件复制到/myfile/source目录下

     通配符

     *   代表0-n个字符

     ?   代表任意一个字符

     

     #cp -r /etc/*.conf /myfile/source

     

     例:将/etc目录下以a或b或c开头,文件名共四个字符,扩展名为conf的文件复制到/myfile/dest目录

     #cp -r /etc/[abc]???.conf /myfile/dest

     

   (9)mv     移动(剪切)文件或目录

     #mv 源文件 目标目录

     #mv yp.conf my.conf

     

   (10)file  检测文件类型

     #file /dev/sda1

     

   (11)rm  删除文件或目录

     #rm 文件名

     #rm yp.conf

      -f  不提示,直接删除文件

      -r  删除目录

      

     #rm -fr *

     

   (12)ln  创建链接文件

     软链接(符号链接)

     #ln -s 源文件 链接目标

     #ln -s /etc/sysconfig/network-scripts/ifcfg-eth0 /ifcfg-eth0

     

     硬链接

     #ln 源文件 链接目标

       不能创建目录的硬链接

       不能跨分区创建硬链接

       会增加文件的链接计数

#ln /myfile/yp.conf /test/yp.conf   

     

2、linux下文件内容查看操作

   (1)cat   从前往后查看文件内容

   (2)more  分页查看文件内容

   (3)less  可控制的分页查看文件内容

   (4)head  显示文件前n行,默认10行

   (5)tail  显示文件后n行,默认10行

   (6)tac   倒序显示文件内容

   

   |  管道符,用于链接两个命令,将前一个命令的输出作为后一个命令的输入

   

   例:显示文件httpd.conf的第100行到120行的内容

    #head -120 httpd.conf | tail -21

    

    综合练习:

   (1)创建如下目录结构(带扩展名的为文件,其余为目录)

                         /zhlx

                         |

     ____________________|______________   

    |       |           |      |        |

   软件     程序        电影    音乐      资料

    |                  |            ____|_____   

 ___|____        ______|______     |          |

|        |      |      |      |    数学       英语

办公软件 绘图软件  武侠   文艺   纪录   |          |

                |                 练习.txt   口语.mp3

           _____|______

          |            |

        诛仙.txt   天龙八部.txt

        

    (2)将/etc下所有以a或c或y或z开头,以conf为扩展名的文件复制到"程序"目录下

    (3)将/var/log目录下的所有内容复制到办公软件目录下

    (3)将"办公软件"目录改名为"系统日志"

    (4)将/etc/httpd/conf/httpd.conf文件复制到音乐目录下并改名为web.conf

    (5)将web.conf文件创建软链接到绘图软件目录下的sweb.conf

    (6)将web.conf文件创建硬链接到绘图软件目录下的hweb.conf

    (7)删除"程序"目录下所有中间包含"h"字符的文件

    

3、linux下的查找命令

  (1)which  用于搜索可执行文件的路径及其别名定义

    附加内容:linux命令别名定义

    #alias    查看别名定义

    #alias dir='ls -l'   定义别名

    #unalias dir         取消别名

    

  (2)whereis  用于搜索可执行文件的路径及其帮助文件所在路径

    #whereis mv

    

    环境变量:保存系统环境的值

    #export  显示或定义环境变量

    #echo $PATH  查看环境变量PATH的值

    

    内部命令:直接写在shell里面的命令

    外部命令:保存在磁盘上面的可执行程序

    

   (3)locate  根据目录数据库进行模糊查找

    #updatedb  生成目录数据库

    

   (4)find    根据文件属性进行查找

      文件的属性:

        文件类型 -type

          f  普通文件

          d  目录文件

          l  链接文件

          b  块设备文件

          c  字符设备文件  

        文件所属用户 -user -nouser

        文件所属组 -group -nogroup

        文件大小 -size

        文件创建时间 -ctime

        文件名称 -name

        文件权限 -perm

        

      find的使用格式

      #find <指定目录> <文件属性>

      例:查找系统中扩展名为iso的文件

      #find / -name "*.iso"

      

      例:查找/etc目录下所有以a或c或y或z开头,以conf为扩展名的文件

      #find /etc -name "[acyz]*.conf"

      

      多条件进行查找

      -o 或 -or   :逻辑或,只要满足其中一个条件即匹配

      -a 或 -and  :逻辑与,要同时满足所有条件才匹配

      -not       :逻辑非

      

      例:查找/etc目录下属于root用户的所有链接文件。

      #find /etc -user root -type l

      #find /etc -user root -type l -exec ls -l {} \;   显示找到结果的详细信息

      #find /etc \( -user root -or -type l \) -exec ls -l {} \;

      

      例:查找/var/log目录下属于root用户的大于10k的普通文件。

      #find /var/log -user root -type f -size +100k -exec ls -l {} \;

      

      

      怎样获取命令帮助

      #help 命令名 或#命令名 --help 或#命令名 -h

      #man 命令名

      #info 命令名

      

      练习:1、设定环境变量PATH的值为/sbin,/bin,/usr/sbin,/usr/bin,/usr/local/sbin,/usr/local/bin

           2、快速找出系统中所有包含httpd字符的文件

           3、查找系统中属于root用户,并且大于500M的普通文件

           

4、linux下的文件压缩和归档(打包)命令

  (1)zip和unzip命令压缩和解压缩

      #zip test1.zip file1

      #unzip test1.zip

      

  (2)gzip和gunzip命令进行压缩和解压缩

      #gzip file2

      #gunzip file2.gz

      #zcat file2.gz

      

  (3)bzip2和bunzip2命令进行压缩和解压缩

      #bzip2 file3

      #bunzip2 file3.bz2

      #bzcat file3.bz2

      

  (4)tar  打包和压缩

      -c  创建包

      -x  解包

      -v  显示信息

      -f  指定文件名

      -z  打包时使用gzip进行压缩

      -j  打包时使用bzip2进行压缩

      -t  查看压缩包的内容但不实际解包

      -C  指定解包后的文件存放目录

      #tar cvf etc.tar /etc

      #tar xvf etc.tar -C /tmp

      #tar czvf /myfile/test.tar.gz /etc /var/log

      #tar cjvf /myfile/test.tar.bz2 /etc /var/log

      

      练习:将/etc,/var/log,/boot三个目录分别打包成test.tar.gz和test.tar.bz2文件并存放到/myfile目录下。

      #tar czvf test.tar.gz /etc /var/log /boot

      #tar cjvf test.tar.bz2 /etc /var/log /boot

      

第六章 vim编辑器的使用

  1、怎样进入vi

    #vim 文件名

    

  2、vim的工作模式

    (1)命令模式,vim启动时默认进入命令模式,在命令模式下所有输入都解释为命令

    (2)末行模式,在命令模式下按"shift+:"进入末行模式

    (3)插入模式,在命令下输入i,I,o,O,a,A,s,S进入插入模式

    

       末行模式

                ————按Esc键—————> 命令模式

       插入模式

3、命令模式下的文件编辑

    (1)删除操作

       x   删除当前光标的字符

      nx   删除从当前光标开始的n字符

      dw   删除当前光标后的一个单词

      dd   删除当前光标所在行

      

    (2)光标移动操作

      nG   将光标移到第n行

       G   将光标移到最末行

       

    (3)复制操作

      yw   复制一个单词

      yy   复制当前光标所在行

       p   粘贴复制的内容到当前光标下

       

    (4)文本查找

      /str 从文件开头向后查找字符串str

      ?str 从文件末尾向前查找字符串str

      n,N  重复查找

      

    (5)撤销编辑

      u    撤销上一步的操作

      U    撤销当前行的所有操作

      ctrl+r  往回撤销

      .    重复执行上次的操作命令

      rstr 替换当前字符str

      

  4、末行模式下的操作

    (1)文件的保存退出操作

      :wq              保存文件并退出vi

      :w 文件名及路径    文件另存为

      :q!              不保存退出

      :q               退出

      

      :r 文件名及路径   读入指定文件的内容到当前光标下

      

      :e 文件名及路径   不退出vi编辑其他文件

    

    练习:1、将/etc/httpd/conf/httpd.conf复制到/myfile目录下

         2、删除httpd.conf文件的第100-400行

         3、复制httpd.conf文件的第10至20行,并粘贴到文件的末尾

         4、查找httpd.conf文件中的所有conf字符串

         5、将文件另存为/myfile/web.conf

         6、不保存退出vi

上一篇:K8S学习笔记之filebeat采集K8S微服务java堆栈多行日志


下一篇:Spring Boot + Spring Cloud 构建微服务系统(六):熔断监控集群(Turbine)