第二周作业

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

 cp复制,mv移动,rm删除

    1、cp:    

        1,用法:
       cp [OPTION]... [-T] SOURCE DEST       
       cp [OPTION]... SOURCE... DIRECTORY       
       cp [OPTION]... -t DIRECTORY SOURCE...
        2,规则
        当源是文件:
           目标不存在时:新建目标,并将源的内容填充至目标中;
           目标存在时:1,如果目标是文件,则覆盖,可使用-i参数提醒;2,如果目标是目录,则在目标下新建与源同名的文件,并将源内容填充入内
       当源是多个文件时:目标必为目录,如果目标不存在,则不能复制
       
       如果源是目录,需使用-r选项,cp默认不支持目录复制
           目标不存在时:创建指定目录,复制源目录中的所有文件至目标中;
           目标存在时:1,目标是文件,报错;2,目标是目录,复制进去
           
        3,常用选项:
        -i:交互式
        -r,-R:递归复制目录及其内部所有内容
        -a:归档
        -d: --no-dereference --preserv=links
        --preserve[=ATTR_LIST]
            mode:权限
            ownership:属主属组
            timestamp:时间戳
            xattr:扩展文件属性
            context:上下文
            links:链接
            all:所有
        -p:保留权限,属主属组及时间戳 = --preserv=mode,ownership,timestamp
        -v:--verbose                
        -f:--force
  2、mv:move移动文件
    如果SRC是单个文件:
      若DEST不存在,则剪切源文件至新目录下,并重命名成新名字
      如果SRC是目录,则把目录下所有文件都移动过去
    3、rm:remove,删除
        常用选项:
        -i:交互式
        -f:强制删除
        -r:递归
        rm:-rf,强制递归删除

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

    命令执行状态:bash使用特殊变量$?保存最近一条命令的执行状态结果:其中0表示成功;1-255表示失败。
    命令行展开:
            1,~:展开为用户的主目录;
            2,~USERNAME:展开为指定用户的主目录
            3,{}:可承载一个以逗号分隔的列表,并将其展开为多个路径
    如:mkdir -p 2/{bin,sbin,usr/{bin,sbin}}
        mkdir -p 1/{x,y}_m/{m,n}

    

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

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


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

       文件名,大小,块,IO块,设备,Inode,硬链接,权限,Uid,Gid,环境,时间戳

       stat查看文件元数据

       touch修改时间戳

 touch [OPTION]... FILE...
     -a:修改访问时间
     -m:修改修改时间
     -t:修改为指定时间
     -c:不创建文件


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

命令别名(alias)
    通过alias命令实现
        1)alias:显示当前shell进程中所有可用的命令别名
        2)alias:NAME=‘VALUE’
定义别名NAME,其相当于执行命令VALUE
        例:alias cdnet='cd /etc/sysconfig/network-scripts'
注意:在命令行中定义的别名,仅对当前shell进程有效,如果想永久有效,需要定义在配置文件中
    仅对当前用户:~/.bashrc
    对所有用户有效:/etc/bashrc
立即生效,重新读取配置文件:source .bashrc
 
bash进程重新读取配置文件:
        source /path/to/config_file
        . /path/to/config_file
撤销别名:unalias
        unalias [-a] name [-name ...]
PS:如果别名同原命令名称,要执行原命令,可使用"\COMMAND"


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

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

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

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

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

# ls /etc/[^:alpha:]?

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

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

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

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

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

# mkdir mytest2 && cp -r /etc/*.d /tmp/mytest2

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

# mkdir mytest3 && cp /etc/[lmn]*.conf /tmp/mytest3


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

(0)
lichenhanlichenhan
上一篇 2016-07-04 11:27
下一篇 2016-07-04 11:27

相关推荐

  • 推荐-LVS专题: LVS+Keepalived并使用DNS轮询实现Director的高可用和负载均衡

    LVS专题: LVS+Keepalived并使用DNS轮询实现Director的高可用和负载均衡 前言 什么是KeepAlived 实验介绍 实验拓扑 实验环境 实验步骤 配置KeepAlived(1) 实现Director 的VIP互为主从 测试 配置LVS 配置KeepAlived(2) 测试LVS 配置RS的IP和web服务 配置DNS 最终测试 总结…

    Linux干货 2016-04-09
  • linux系统启动流程详解

    一、 为什么要研究linux系统启动:     或许有人会说,等它开机就好了,为什么还要研究它开机流程呢,其实如果服务器运行很好又没有人为的误操作等,或许不用研究,但是为了能在系统出问题后第一时间的修复它,又或者你忘记了root密码等情况时就非常有必要研究一下linux的开机流程了,因为只有知道了它是如何运作的,才能让…

    Linux干货 2016-09-13
  • 谁写了Linux

    2009年8月,Linux软件基金会发布了一份叫《Who Writes Linux and Who Supports It》(PDF)的报告。这份报告主要对Linux 2.6.x的开发进行了全方位的统计。看了以后才知道,原来Linux的开发的生产率竟是这样的惊人,而且相当的的令人振奋,所以,在第一时间转过来给大家看看。让人不得不惊叹,这不可思议的具有非凡活力…

    Linux干货 2015-04-03
  • 文件查找locate和find

    locate 查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db 依赖于事先构建的索引 索引的构建是在系统较为空闲时自动进行(周期性任务),管理员手动更新数据库(updatedb) 索引构建过程需要遍历整个根文件系统,极消耗资源 工作特点: •查找速度快 •模糊查找 •非实时查找 •搜索的是文件的全路径,不仅仅是文件名 •…

    2017-08-11
  • 三台主机部署phpwind

    PHPWind(简称:PW)的使命是让网站更具价值,让更多人从网络中享受便利,以提升生活品质。 phpwind是一个基于PHP和MySQL的开源社区程序,是国内最受欢迎的通用型论坛程序之一。phpwind第一个版本ofstar发布于2004年。截止2013年12月phpwind项目品牌由阿里云计算有限公司拥有,软件全面开源免费。 特点 1. 非凡的访问速度 …

    2017-06-13
  • 马哥教育网络班21期+第四周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel /home/tuser1; chmod -R gx=— /home/tuser1 [root@mag…

    Linux干货 2016-08-02