马哥教育网络班21期+第2周课程练习

一、Linux文件管理类命令

    1、文件的复制、移动和删除

   

   A、cp  文件的复制
         cp命令的用法:   
            cp [选项]  源文件  目标文件
               a)、目标文件不存在,新建目标文件,并将源文件内容填充到目标文件中
               b)、目标文件存在,源文件内容将覆盖目标文件;使用-i会有交互式提醒
            cp [选项]  多个源文件   目标目录
                       此时目标必须是目录,否则就会出错
            cp -r [选项]   源目录   目标
                 a)、目标不存在,则创建目标名的目录,复制源目录下文件到目标目录下;
                 b)、目标存在,但是是文件时,报错;
                    目标存在,是目录时,复制源目录下文件到目标目录下;
             常用选项:
                     -i:交互式
                     -r, -R: 递归复制目录及内部的所有内容;
                      -a: 归档,

     B、mv文件移动

       

 mv用法:
             mv [选项]  源文件   目标文件
             mv [选项]  多个源文件    目标目录
             mv -r [选项]    源目录     目标

      C、rm删除文件

           

rm命令用法:
              rm [选项]   文件名
                  rm常用选项:
                        -i: 交互式
                        -f: 强制删除
                        -r: 递归

二、练习

  1、创建/tmp目录下的:a_c, a_d, b_c, b_d

mkdir -p /tmp/{a,b}{c,d}

  2、创建/tmp/mylinux目录下的目录:

        mylinux/

                      ├── bin

                      ├── boot

                      │   └── grub

                      ├── dev

                      ├── etc

                      │   ├── rc.d

                      │   │   └── init.d

                      │   └── sysconfig

                      │       └── network-scripts

                      ├── lib

                      │   └── modules

                      ├── lib64

                      ├── proc

                      ├── sbin

                      ├── sys

                      ├── tmp

                      ├── usr

                      │   └── local

                      │       ├── bin

                      │       └── sbin

                      └── var

                          ├── lock

                          ├── log

                          └── run

 mkdrir -p /tmp/mylinx/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{local,log,run}}

三、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。

     Bash 命令执行后,会对执行状态返回一个值。

     如果命令执行成功则返回0,如果执行不成功,就会返回一个1-255的数字,这个返回值保存在特殊变量$?中。

     可以使用echo $?查看返回值。

   命令行展开:

      1、~  展开为用户的家目录

          使用方法:~username

      2、使用花括号和逗号的一个列表,展开为多个路径

  /etc/{a,b}  表示 /etc/a   /etc/b

 mkdir -p /tmp/{a,b}{c,d}     #会新建 /tmp/a/c   /tmp/a/d   /tmp/b/c   /tmp/b/d 目录

四、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

   文件的元数据包含文件本身的一些属性信息,如:文件名、文件的各类权限、各类时间戳、inode号码、链接次数等。

   文件包括三个时间戳:atime,mtime,ctime,可以使用touch命令来修改时间戳,用法如下

     touch  [选项]   filename

         常用选项有:

            -a: 只更改atime

            -m:  只更改mtime

            -c: 如果文件不存,则不予创建

五、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?

   别名:

     使用alias命令定义别名,用法: alias name='command',

     使用alias 定义的别名,只对当前shell有效,重新登录就会失效。

     如果希望永久有效,请更改下面的配置文件

            如果仅对当前用户:更改~/.bashrc

            如果对所有用户有效:更改/etc/bashrc

  使用管道把一个命令的执行结果传送给另一个命令

ll | sort -d' ' -k2

六、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。

ls /var/l*[0-9]*[[:lower:]]

七、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录

ls /etc/[0-9]*[[:alpha:]]

八、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。

 ls /etc/[^[:alpha:]][[:alpha:]]*

九、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。

touch "tfile-`date +%F`-`date +%l`-`date +%M`-`date +%S`"

十、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

 cp -r /etc/p*[^0-9] /tmp/mytest1

十一、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。

cp -r /etc/*.d   /tmp/mytest2

十二、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

cp -r /etc/[m,n]*.conf /tmp/mytest3

原创文章,作者:N21-沉舟,如若转载,请注明出处:http://www.178linux.com/19908

(0)
上一篇 2016-06-26 22:46
下一篇 2016-06-26 22:49

相关推荐

  • vim编辑器

    vim编辑器 vi:Vistual Interface,是一种文本编辑器,所谓文本编辑器就是基于字符编码的文件,常见的编码有ASCLL编码,UNICODE编码。 vim:即vi IMproved:vi的增强版,可以使用颜色或者底线等方式来显示一些特殊信息,是模式化的编辑。 文本编辑器的种类 行编辑器:所谓行编辑器就是一行一行来编辑处理的工具,如sed 全屏编…

    Linux干货 2016-08-15
  • Linux进程篇16.0

    Linux进程介绍

    Linux干货 2017-12-18
  • IoC/DIP其实是一种管理思想

    关于IoC的的概念提出来已经很多年了,其被用于一种面象对像的设计。我在这里再简单的回顾一下这个概念。我先谈技术,再说管理。 话说,我们有一个开关要控制一个灯的开和关这两个动作,最常见也是最没有技术含量的实现会是这个样子: 然后,有一天,我们发现需要对灯泡扩展一下,于是我们做了个抽象类: 但是,如果有一天,我们发现这个开关可能还要控制别的不单单是灯泡的东西,我…

    Linux干货 2016-08-15
  • 姗姗来迟的第三周作业

    一,列出当前系统上所有已经登录的用户的用户名,注意,同一个用户登录多次只显示一次即可 w -h | cut -d" " -f1 | uniq who |cut -d" " -f1|uniq 二,取出最…

    Linux干货 2016-11-21
  • 一个开发眼中的运维

    在云计算时代,开发和运维的结合变得越来越重要。在DIFF论坛第一期,前新浪SAE运维主管,郑志勇,分享了《一个开发眼中的运维》根据自己从开发人员转型运维之后的心得,谈如何把在开发上的运用抽象思维方式运用到运维领域。 1. 运维不是什么? 运维不是打杂的,运维不是客服,运维也不是服务开发的,但要做好合作。 2. 运维是什么? 运维服务于整个产品,保证架构合理,…

    Linux干货 2015-03-11
  • Linux进程查看与管理命令总结

    Linux进程查看与管理命令总结 内核的功能: 进程管理 文件系统 网络功能 内存管理 驱动程序 安全功能 Process:运行中程序的一个副本。(存在生命周期) Linux内核存储进程信息的固定格式:task struct 多个任务的task struct组件的链表:task list 进程创建: init 父子关系 进程:都有其父进程创建 fork(),…

    Linux干货 2016-09-07

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-29 15:23

    写的很好,可以多注意一下排版问题,加油,最后一个是不是错了