马哥教育网络班22期+第二周课程练习

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

cp命令:copy,有2类复制方法

 1、单源复制:如果DEST不存在:则实现创建此文件,并复制源文件的数据流至DEST中;

    如果DEST存在:如果DEST是非目录文件,则覆盖目标文件;如果DEST是目录文件,则先DEST目录下创建一个与源文件同名的文件,并复制其数据流;

 2、多源复制:

   如果DEST不存在:错误;

   如果DEST存在:

   如果DEST是非目录文件:错误;

   如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名;

      

   常用选项:

      -i:交互式复制,即覆盖之前提醒用户确认;

      -f:强制覆盖目标文件;

      -r:递归复制目录;

      -d:复制符号链接文件的本身,而非其指向的源文件;

      -a:-dR -preserve=all,archive,用于实现归档;

           –preserv=

                 mode:权限

                  ownership:属主和属组

                  timestamps:时间戳

                  context:安全标签

                  xattr:扩展属性

                  links:符号链接

                  all:上述所有属性

mv命令:移动或者改名

  mv – move (rename) file

   用法:

       mv [OPTION]… [-T] SOURCE DEST

       mv [OPTION]… SOURCE… DIRECTORY

       mv [OPTION]… -t DIRECTORY SOURCE…

   在同一级的目录下,用mv命令,为改名,并把目标文件的内容修改为何源文件一样内容;

 ~]# cat test1 
    1 
 ~]# mv test1 test3
 ~]# cat test3 
    1

   在不同目录下,目标目录内无与之要移动文件的目录内的相同名字的文件,则把源文件移动至目标目录下;

rm命令:删除命令

  rm – remove files or directories

   用法:

      rm [OPTION]… FILE…

   选项:

      -r:递归删除

      -f:–force 强制删除  

      -i:交互式删除,删除前需用户确认

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

命令行展开:

    ~:自动展开为用户的家目录,或指定的用户的家目录;

    {}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径;

     mkdir -pv /tmp/x/{y1/{a,b},y2}

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

命令的执行状态结果:

 bash通过状态返回值输出此结果;

   成功:0

   失败:1-255

 命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;

    引用命令的执行结果是:

     $(COMMADN)或`COMMAND`

~]# cat /etc/fstab &>/dev/null
~]# echo "$?"
   0
   
~]# cat /etc/fstabb &>/dev/null
~]# echo "$?"
   1

 

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

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

~]# mkdir /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 -p /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}}

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

文件分为两类数据:

1、元数据:metadata 描述数据的,例如书中的目录

2、数据:data  真正的数据,例如书中的内容

  时间戳:

 Access(访问时间): 2016-08-16 06:39:59.915983316 +0800 读取文件

 Modify(更改时间): 2016-08-16 06:39:59.915983316 +0800 数据改变

 Change(改动时间): 2016-08-16 06:39:59.915983316 +0800 元数据改变

  数据改变,元数据一定改变,所以改动时间随着更改时间改变而改变

用stat查看

修改文件时间戳信息可用touch命令

 touch命令:

  change file timestamps;

   -c:指定文件路径不存在时不予创建;

   -a:仅修改access time;

   -m:仅修改modify time;

   -t:年月日小时分钟秒

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

分为两种模式定义别名,一种为全局模式下,一种为用户个人;

其中交互式登录shell进程:

/etc/prifile->/etc/profile.d/*->~/bash_profile->~/.bashrc->/etc/bashrc 从一级级的去定义。

非交互式登录shell进程:

~/.bashrc->/etc/bashrc->/etc/profile.d/*

可以在这些配置文件中去定义别名;

仅在当前shell生效的别名:

alias NAME='VALUE'

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

 ~]# ls /var/ |grep "^l*[0-9][a-z]$"

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

~]# ls -d /etc |grep "^[0-9].*[^0-9]$"

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

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

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

~]# touch /tmp/tfile-`date +%F-%H-%M-%S`

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

~]# cp -fr /etc/p*[^[:digit:]] /tmp/mytest1

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

~]# cp -fr /etc/*.d /tmp/mytest2

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

~]# cp /etc/[l,m,n]*.conf /tmp/mytest3

原创文章,作者:N22-白蚁,如若转载,请注明出处:http://www.178linux.com/38532

(0)
N22-白蚁N22-白蚁
上一篇 2016-08-22
下一篇 2016-08-22

相关推荐

  • vsftp简单应用

    vsftp配置详解 前言 FTP(File Transfer Protocol)是文件传输协议的简称。它能让用户 连接上一个远程计算机(运行着 FTP 服务器程序)查看远程 计算机上有哪些文件,然后把文件从远程计算机上下载到 本地计算机,或把本地计算机文件上传到远程计算机。但是ftp是一种古老的文件传输协议,是明文传输,特别的不安全所以就有了vsftp。 一…

    Linux干货 2016-12-18
  • 文本处理工具

    文本处理工具 一、文本处理命令less,cat,more,sort 1.less  less :一页一页地查看文件或STDIN 输出  查看时有用的命令包括:   /文本  搜索 文本   n/N 个 跳到下一个 or  上一个匹配   less 命令是man…

    系统运维 2016-08-08
  • 马哥linux2014|2015全套教程

    1、本课程全程将基于集成了Openstack云环境、支持高精度时间(PTP)及虚拟化性能大大提升的RHEL 6.5或CentOS 6.6,间或介绍CentOS 7系统的使用; 2、此文章给出的只是个课程知识点框架,实际讲解过程相当精细;另外,知识点讲授的次序未必同此文章所标示的顺序相同; 3、第15期面授班定于2015年3月24号开课;本期将会是马哥教育数年…

    Linux干货 2015-07-14
  • 走进linux的世界

    1、描述计算机的组成及其功能。  所谓的计算机就是一种计算器,而计算器其实是:接受用户输入指令与数据,经由中央处理器的数学与逻辑单元运算处理后,以产生或储存成有用的信息。 计算机系统由硬件系统和软件系统两个部分组成。 硬件系统由运算器、控制器、存储器、输入设备、输出设备组成。 运算器 是计算机中进行算术运算和逻辑运算的主要部件是计算机的主体。 控…

    Linux干货 2017-01-14
  • keepalived高可用

    keepalived实现wrrp热网关备份:keepalived配置文件如下主:! Configuration File for keepalived global_defs {  notification_email {    acassen@firewall.loc    failover@firewal…

    Linux干货 2017-05-16
  • N25_第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 2、写一个脚本     (1) 获取当前主机的主机名,保存于hostname变量中;     (2) 判断此变量的值是否为localhost,如果是…

    Linux干货 2017-02-02

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-22 14:39

    写的很好,排版还可以在漂亮一点,加油。3大题2小题跟老师的题目不一样