N25-第二周做业

一.Linux上的文件管理类命令都有哪些,其常用的使用方法和演示

       1.目录管理的命令    mkdir rmdir

             1)mkdir    创建目录 make directory

                  参数 -p  自动按需创建父目录
                          -v  显示详细过程
                          -m  创建权限

                  例如     创建 /tmp/x/y/z目录

                              mkdir -p /tmp/x/y/z

             2)rmdir   删除空目录 remove directory

                  参数 -p  逐步删除空目录

                  例如     删除 /tmp/x/y/z目录

                                    rmdir -p /tmp/x/y/z

       2.文件查看命令       cat tac head tail more less

             1) cat tac

                          cat   连接文件或标准输入并打印

                          参数 -n 对输出的所有行编号,由1开始对所有输出的行数编号

                          例如  查看/etc/passwd 并显示行号

                                   cat -n /etc/passwd

                          tac    与cat用法相同,倒叙显示

             2)head tail

                          head  查看文件的前n行  默认前10
                          tail     查看文件的后n行  默认后10

                               参数 -f 追加后续

                          例如 查看/etc/passwd 第3-7行

                                  head -7 /etc/passwd | tail -5

             3)more less

                          more 和 less 浏览文件

                          区别more浏览最后一页,自动退出

      3.文件管理工具         cp mv rm

             1)cp      复制命令 copy

                          源文件 目标文件
                
                          单源复制  cp option SOURCE DEST
                          多源复制  cp option SOURCE DIRECTORY
                                         cp option -t DIRECTORY SOURCE
                          
                          单源复制
                          如果DEST不存在  则创建并复制源文件的数据流到DEST中
                          如果DEST存在    则创建目录下一个与源文件同名,并复制数据流
                    
                          多源复制
                           如果DEST不存在  错误
                           如果DEST存在    
                           如果DEST是非目录      错误
                           如果DEST是目录文件    分别复制每个文件至目录并保持原名
                
                           常用选项
                           -i  交互式复制
                           -f  强制覆盖目录文件
                           -r  递归复制目录
                           -d  复制符号链接文件本身,而非其指向的源文件

                          例如 复制/etc/passwd,/etc/passwd到/tmp/magedu文件夹里

                            cp /etc/passwd /etc/passwd /tmp/magedeu/

             2)mv   来移动文件或者将文件改名  move

                        参数   -i 若目标文件已经存在时,就会询问是否覆盖

                                  -f 强制执行

                        例如  1./tmp/x.txt 更名为y.txt

                                    mv /tmp/x.txt /tmp/y.txt

                                 2.移动覆盖/tmp/x.txt到/tmp/y/y.txt

                                    mv -f /tmp/x.txt /tmp/y/y.txt

             3)rm    删除命令 remove

                         参数  -i 交互式删除
                                  -r 递归删除
                                  -f 强制删除

                        例如  删除/tmp下所有文件

                                 rm -f /tmp/*

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

          1.命令执行的状态结果:
                bash通过状态返回值来输出此结果
                    成功  0
                    失败  1-255
                命令执行完   其状态返回值保存于bash的特殊变量$?中

                例如:运行ls /etc 和ls /etx ,查看其命令执行状态返回值

                             1.ls /etc   返回值为0

                             2.ls /etx   返回值为2

          2. 命令行展开

               ~    自动展开为用户的家目录
               {}    可承载一个以逗号分隔的路径列表
                     {a,b}  a  b

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

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

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

          2.

             作业.png

            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}}


四.文件的元数据信息有哪些,分别表示什么含义,如何查看,如何修改文件的时间戳信息
           元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode…)等

                   最近访问 access time
                   最近更改 modify time  
                   最近改动 change time

           用stat命令查看

                   例如:

                  {S(1R5T{FBY1IF549)`YE9T.png

            touch命令
                    参数        -c 制定文件路径不存在时不予创建
                                   -a 修改 access time
                                   -m 修改 modify time
                                   -t 自行修改时间 MMDDhhmm.ss

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

           获取别名  alias
           定义别名  alias NAME='COMMAND'
           撤销别名  unalisa NAME

           例如         alias cls='clear'

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

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

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

           ls -d /etc/[0-9]*[^0-9]

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

           ls -d /etc/[^a-z][a-z]*

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

           touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%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/{lmn}*.conf /tmp/mytest3

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

(0)
lyj821202lyj821202
上一篇 2016-12-11 17:30
下一篇 2016-12-11 17:34

相关推荐

  • N25期—第四周作业

    1、 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 cp –rf /etc/skel /home/tuser1 chmod -R go= /home/tuser1 2、 编辑/etc/group文件,添加组hado…

    Linux干货 2016-12-26
  • 制作引导分区

      使用虚拟机制作一个可以引导启动的简单系统。方法如下:   一、制作两个分区     1、添加一块新的硬盘,新建两个分区,格式化并挂载到/mnt/boot和/mnt/sysroot目录中;虚拟机添加硬盘的操作很简单就不做演示了,要注意的是添加的硬盘最好选择成“将虚拟磁盘存储为单个个文件”,并为将文件名修改为容易识别的…

    Linux干货 2016-01-18
  • OSI模型与TCP/IP协议栈

         OSI模型:     使用OSI模型的意义:      简化教学     加快发展速度     确保技术的互操作性     简化模块化设计  &nbs…

    2017-08-20
  • 程序包管理

    程序包 linux的程序包主要分为两类;二进制可执行安装包和源代码程序文件包     二进制应用程序的组成部分:     二进制文件、库文件、配置文件、帮助文件   查看二进制程序所依赖的库文件:     ldd&nbs…

    Linux干货 2016-05-30
  • Keepalived+LVS(nginx)高可用详解

    一:前言   Keepalived使用的vrrp协议方式,虚拟路由冗余协议 (Virtual Router Redundancy Protocol,简称VRRP);Keepalived的目的是模拟路由器的高可用,一般Keepalived是实现前端高可用,常用的前端高可用的组合有,就是我们常见的LVS+Keepalived、Nginx+Ke…

    Linux干货 2017-05-15
  • 设计模式 ( 十六 ) 观察者模式Observer(对象行为型)

    1.概述 一些面向对象的编程方式,提供了一种构建对象间复杂网络互连的能力。当对象们连接在一起时,它们就可以相互提供服务和信息。 通常来说,当某个对象的状态发生改变时,你仍然需要对象之间能互相通信。但是出于各种原因,你也许并不愿意因为代码环境的改变而对代码做大的修改。也许,你只想根据你的具体应用环境而改进通信代码。或者,你只想简单的重新构造通信代码来避免类和类…

    Linux干货 2015-07-24

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-16 15:59

    赞,整体不错~注意下排版会更好~~加油~