马哥教育网络班20期+第1周课程练习

1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。

相关命令:

    目录管理:

        pwd:显示当前工作目录

        cd: 目录间跳转

           cd – :在上一个目录和当前目录间跳转

           cd 或 cd ~ :回当前用户的家目录

        ls:显示当前目录下的内容

           ls -l: 长格式显示   drwxr-xr-x.   3 root root  443  15 6月  12 12:01 opt

              drwxr-xr-x :最左侧代表文件类型

                      -:普通文件

                      d:目录

                      l:链接文件

                      b:块设备

                      c:字符设备

                      p:管道文件

                      s:套接字文件

                   rwxr-xr-x:每三位分别对应属主属组其他用户的读写执行权限。

                         3:文件被硬链接次数

                         root:文件的属主

                         root:文件的属组

                         数字:文件大小

                         date:文件最后一次被修改的时间

              ls -h (human-readable): 单位换算,人可读

              ls -d : 显示目录自身的相关属性

           ls -r : 逆序显示

           ls -R : 递归显示

         mkdir:创建目录 

              -p: 自动创建所需的各目录

              -v: 显示细节

              -m: 创建时直接指定权限

         rmdir:删除空目录

         tree: 树状显示目录下内容

             -d:只显示目录

             -L #:level 显示几个层级

             -P pattern :只显示由指定pattern匹配到的路径

    文件查看类命令:

         cat:查看文件

         tac:逆序查看文件

         more,less:查看文件 可翻页查看

         head:

            -c #:截取前#个字节

            -n #:截取前n行

         tail:

            -c #: 截取后#个字节

            -n #:截取后n行

   文件时间戳管理命令:

         touch :

           三个时间戳:

               access time:访问时间,简写为atime,读取文件内容时改变

              modify time: 修改时间,简写为mtime,修改文件内容时改变

               change time:改变时间,简写ctime,元数据发生改变时改变

              -a:only access time

              -m: only mtime

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

     

    文件管理:

         cp:拷贝 cp SRC DEST

           SRC是文件:

                DEST:不存在:新建,拷贝填充

                    文件存在:覆盖

                    DEST是目录:则在其下创建新的,拷贝填充

           SRC是多文件:

                DEST必须是目录且存在

           SRC是目录:

                必须使用-r选项

                DEST不存在:则创建指定目录,复制SRC目录中的所有文件到DEST中去

                DEST存在,且必须是目录,否则报错

                常用选项:

                  -r:递归复制

                  -i:交互式

                  -a:归档式复制

                  -p:–preserve=mode,ownership,timestamp

                  -v: 可见

                  -f: force

         mv:移动

              mv SRC DEST

         rm:删除

              -i:交互式删除

              -r: 递归删除

              -f: 强制删除

           

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

工作特性:

     (1)命令历史:

           history:内容存储在~/.bash_history

                history #: 显示命令历史中最近的#条

                history -a:追加当前回话缓冲区的命令历史至历史文件

           调用命令历史中的命令:

                !#:调用哪一条命令

                !!:上一条命令

                !string:匹配上一次string的命令

           调用上一次的最后一个参数:

                !$:

                ESC, .

                Alt+.

     (2) 命令补全 Tab键

     (3) 路径补全

    (4)命令行展开

    (5)命令的执行结果状态

    (6)命令别名 alias NAME="value"

            仅对当前用户:~/.bashrc

            对所有用户有效:/etc/bashrc

     (7)glob 

          1.通配符:*,?,[],[^]

          2.专用字符集和:

             [:digit:],[:lower:],[:upper:],[:alpha:],[:alnum:],[:grapha:]       

     (8)bash快捷键

    (9)bash的IO重定向及管道

3、请使用命令行展开功能来完成以下练习:

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

      touch /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

     mkdir /tmp/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}}

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

[root@localhost test]# stat sort.sh 

  文件:"sort.sh"

  大小:63         块:8          IO 块:4096   普通文件

设备:fd01h/64769d Inode:104058236   硬链接:1

权限:(0755/-rwxr-xr-x)  Uid:(    0/    root)   Gid:(    0/    root)

环境:unconfined_u:object_r:user_tmp_t:s0

最近访问:2016-06-14 21:48:14.750364346 +0800

最近更改:2016-06-14 21:48:32.367570367 +0800

最近改动:2016-06-14 21:48:32.367570367 +0800

创建时间:-


touch -a: 只改变访问时间

touch -m:只改变修改时间

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

   alias name="command"

   $(command)或者`command`


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

   ls /var/ | grep "^1.*[[:digit:]]\+.*[[:lower:]]$"


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

   ls /etc/ | grep "^[[:digit:]].*[^[:digit:]]$"

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

   ls /etc/ | grep "^[^[:alpha:]][[:alpha:]].*"


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

    cd /tmp/ 

    touch tfile-$(date +%F-%H-%M-%S)


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

  cp -r $(ls /etc | grep "^p.*[^[:digit:]]$") /tmp/mytest1


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

 cp -r $(ls /etc/ | grep "\(\.d\)$") /tmp/mytest2


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

 cp $(ls /etc/ | grep "^[1,m,n].*\(\.conf\)$")  /tmp/mytest3

原创文章,作者:love_in_linux,如若转载,请注明出处:http://www.178linux.com/18301

(0)
love_in_linuxlove_in_linux
上一篇 2016-06-23 11:07
下一篇 2016-06-23 11:08

相关推荐

  • DNS实验

      建立DNS服务器(正向解析) linux没有缓存 windows有dns缓存 权威结果,非权威结果 无论是正向解析数据库还是反向解析数据中  写管理员邮件地址或完整域名(FQDN)都要再后面加上点。否则系统会自动不上区域名称。 实验环境先清理防火墙规则,关闭防火墙. centos7 systemctl disabl…

    Linux干货 2016-11-01
  • LVM 逻辑卷管理器-缩小LV容量及快照区的建立

    LVM 逻辑卷管理器-缩小LV容量 将/dev/sdb2分区抽离出来,缩小LV容量 (1)首先查看/dev/sdb2的容量大小 [root@centos6 ~]# df -h /mnt/lvm/ Filesystem        &nbs…

    Linux干货 2016-09-19
  • Linux基础知识总结

    Linux基础知识 计算机系统 计算机硬件组成 1.控制器:计算机系统的控制中心,协调各部分工作,保证计算机按照预先规定的目标和步骤进行操作及处理。 2.运算器:对数据进行算数运算,逻辑判断以及数据的比较、移位等操作。 3.存储器:存取程序和各种数据信息。  4.输入设备:把信息,如数字、文字、图像等转换为数字形式的“编码”的设备(键盘,扫描仪) …

    2017-05-18
  • keepalived高可用实例

    1、keepalived单实例 1)实验环境为VMware虚拟机,两台centos7.2,主机1IP地址为10.1.252.55,主机2IP地址为10.1.252.34,虚拟路由IP为10.1.252.246, 2)确保iptables和selinux不影响实验 (1)确保两台主机的时间同步 [root@localhost ~]# vim…

    Linux干货 2016-11-01
  • linux下rpm、yum、sed基础用法介绍

    一、RPM包管理介绍 RPM是radhat系列和suse系列等的包管理系统,主要管理系统上软件包的安装、卸载和查询 rpm安装语法:rpm [install options] [programname…] 常用安装option:-i,表示安装程序包 -v,表示输出详细安装过程 -h,安装过程输出进度条 -U,升级程序包 -c,查看程序包的配置文件…

    2018-04-01
  • shell脚本语言中的选择执行

    shell脚本语言中的选择执行 概述 程序执行过程分为顺序执行、选择执行和循环执行。顺序执行是指程序按照步骤一步一步地运行。选择执行是指程序根据特定条件选择两项或者多项中的一项运行。循环执行是指程序根据特定条件重复执行直到某个节点结束,继续运行其他步骤。本篇文章从判断条件和条件判断式简要说明shell脚本语言中程序选择执行的用法。 shell脚本中的判断条件…

    Linux干货 2017-04-17

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-23 11:38

    写的很棒,cp的时候是不是可以直接支持正则表达式那?可以尝试一下