n28-第二周

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

cp:copy files and directories 复制文件和目录

-i:交互式复制
 默认情况下是别名定义了alias cp='cp -i'

-f:强制复制
 #cp -f /etc/issue /tmp/first.txt

-r:递归复制目录
 将/etc目录递归复制到/tmp/test/目录下
     [root@localhost ~]# cp -r /etc/ /tmp/test/
     [root@localhost ~]# ls /tmp/test/
      etc  issue  mw

-d:不复制链接文件的真实文件
  不将system-release的真实文件复制过来,只复制链接文件
    [root@localhost ~]# cp -d  /etc/system-release /tmp/system.test
    [root@localhost ~]# ls -l /tmp/system.test 
    lrwxrwxrwx. 1 root root 14 Dec  7 15:56 /tmp/system.test -> centos-release

 -a:archive 归档
 same as -dR --preserve=all 将源文件的所有属性都复  

 设置复制过来文件的属性
 --presery=
   mode 权限
   owership属主属组
   timestamps 时间戳
   context 安全表签
   xattr扩展属性
   links 符号链接

rm:remove files or directories 删除文件或目录

 -f:force

 -r:recursive
   删除/tmp/test/etc下的文件以及目录
   #rm -r /tmp/test/etc/

 -rf:强制递归删除
   强制删除/tmp/test/etc下的文件以及目录
   #rm -rf /tmp/test/etc/

mv:move (rename) files 移动或重命名

 mv同一个目录下可以对文件重命名
   把first.txt重命名为first.mv
    # mv first.txt first.mv

 -f:force

 -i:交互式

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

 bash的命令状态返回值:在执行命令后使用,获取命令返回值使用$?
 如果命令正确返回值=0
 如果命令错误返回值=1-255


 命令行展开{}
 如果用花括号包括,而且里面用逗号分隔(至少包含一个逗号,可以是空内容),这样花括号里的内容会被展开一个列表
 例如:/etc/a{b,c}表示为/etc/ab,/etc/ac

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

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

 mkdir /tmp/{a,b}_{c,d}

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

 mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lin64,proc,sbin,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

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

 stat查看文件的元数据
  # stat /tmp/first.mv 
 元数据有:文件路径,文件大小,块大小,IO块,device,inode,时间戳等
 修改文件是的时间戳使用touch
 touch -a :修改accesstime时间,即最近访问时间
 touch -m :修改modifytime时间,即最近改动时间

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

 定义别名使用:alias
   例如:将mkd定义为mkdir的别名
        # alias mkd='mkdir' 

 引用另一个命令的执行结果使用:$(COMMAND)
   例如:创建以现在时间的为文件名的文件
        # touch $(date)

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

 [root@localhost ~]# ls /var/1?*[[:lower:]]
 /var/1ac

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

 [root@localhost ~]# ls /etc/[0-9]*[^0-9]
 /etc/8wqw 

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

 [root@localhost ~]# ls /etc/[^[:alpha:]][a-z]*
 /etc/8wqw

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

 #  mkdir /tmp/tfile-$(date +%y-%m-%d-%H-%M-%S)

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

 首先创建/tmp/mytest1
   [root@localhost tmp]# mkdir /tmp/mytest1
   [root@localhost tmp]# cp -rf /etc/p*[^0-9] /tmp/mytest1/

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

 首先创建/tmp/mytest2
 [root@localhost tmp]# mkdir  mytest2
 [root@localhost tmp]# cp -r /etc/*.d /tmp/mytest2

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

 首先创建/tmp/mytest3
 [root@localhost tmp]# mkdir  mytest3
 [root@localhost tmp]# cp -r /etc/{l,m,n}*.conf /tmp/mytest3

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89803

赞 (0)
你开心就好你开心就好
上一篇 2017-12-10 18:49
下一篇 2017-12-10 20:53

相关推荐

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

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i nologuser=0 declare -i loguser=0 while read&…

    Linux干货 2016-09-05
  • Nginx工作原理和优化、漏洞。

    1.  Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。 Nginx的模块…

    Linux干货 2015-04-04
  • Linux软件包管理之rpm和yum的使用

    rpm命令的使用 什么是RPM? rpm:RPM Package Manager (原Redhat Package Manager) Linux 软件包管理工具 特定的程序由应用程序组成;     GPL:源码     glibs:标准的C库 常见Linux发行版的软件包管理器:…

    Linux干货 2016-08-25
  • shell脚本之测试命令(test、[])

    话不多说,直接开车 在编写shell脚本中,我们经常需要判断命令执行的正确与否,从而进行不同的操作。首先我们来介绍下条件性的执行操作符:根据退出状态而定,命令可以有条件地运行。其中,利用echo的话方便我们对测试结果的查看。 (1)&& 代表条件性的AND THEN 可以理解为短路与:当&&前面命令为真时,执行&am…

    Linux干货 2017-08-05
  • 正则表达式

    Regual Expression 由一类特殊字符及文本字符所编写的模式,其中有些字符不表示字面意义,而是用于控制或通配的功能 分类 REGEXP:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能 程序支持:grep, vim, less,nginx等 分两类: 基本正则表达式:BRE 扩展正则表达式:E…

    Linux干货 2016-08-07
  • Ansible的常用模块

    command模块: 目的:在指定节点上运行hostname命令 命令:ansible 192.168.1.16 -m command  ‘hostname’copy模块:目的:把主控端/root目录下的a.sh文件拷贝到到指定节点上 命令:ansible 192.168.1.16 -m copy -a ‘src=/roo…

    Linux干货 2017-10-31

评论列表(1条)

  • 马哥教育
    马哥教育 2018-01-02 21:27

    很好,每一题都很用心。将题中涉及的知识点在日常运维中多加应用,争取尽快做到得心应手。