第二周作业

# 第二周作业

##1.文件管理类命令

###cp   复制

* 单元复制

如果目标文件不存在,会自动创建

如果已经存在,会覆盖

* 多源复制

目标必须是目录,分别复制每个文件至目标目录中,并保持原名

> -i: 交互提醒

> -f: 强制覆盖,不交互

> -r: 递归复制目录

> -d: 如果复制的是符号链接,不找源文件,仅复制链接本身,cp默认是会复制符号链接的源文件到目标文件的

> -a: 用于实现付归档

> –preserv=

>     mode    权限

>     ownership   属主和属组

>     timestamps  时间戳

>     context     安全标签

>     xattr       扩展属性

>     links       符号链接

>     all         上述所有属性

    

###mv   移动

> -i  交互式

> -f  强制,不交互

###rm   删除

> -i  交互式

> -f  强制    force

> -r  递归    recursive

**所有不用的文件建议不要直接删除,而是移动到某个专用目录。**

##2.bash执行状态和命令行

###命令行展开

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

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

/tmp/{a,b}  相当于/tmp/a,/tmp/b

    [root@cloud test]# mkdir -pv /root/test/x/{y1/{a,b},y2}

    mkdir: created directory ‘/root/test/x’

    mkdir: created directory ‘/root/test/x/y1’

    mkdir: created directory ‘/root/test/x/y1/a’

    mkdir: created directory ‘/root/test/x/y1/b’

    mkdir: created directory ‘/root/test/x/y2’

    [root@cloud test]# mkdir -v {a,b}_{c,d}

    mkdir: created directory ‘a_c’

    mkdir: created directory ‘a_d’

    mkdir: created directory ‘b_c’

    mkdir: created directory ‘b_d’

###命令的执行状态结果

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

    成功:0

    失败:1-255

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

    

    [root@cloud test]# ls

    123.gz  a_c  a_d  b_c  b_d  file1  file1.gz  file2  x

    [root@cloud test]# echo $?

    0

命令正常执行时,有的还会有命名返回值

这个返回值会保存于bash的变量中 $(COMMAND)或\`COMMAND\`

##3.完成练习

 – 创建/tmp目录下的:a_c,a_d,b_c,b_d

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

 – 创建/tmp/mylinux目录下

 mkdir -pv /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.文件的元数据

###stat能看到文件的元数据

    [root@cloud test]# stat file1

      File: ‘file1’

      Size: 21         Blocks: 8          IO Block: 4096   regular file

    Device: 802h/2050d Inode: 68666229    Links: 1

    Access: (0644/-rw-r–r–)  Uid: (    0/    root)   Gid: (    0/    root)

    Access: 2016-12-06 23:18:37.841655271 +0800

    Modify: 2016-12-06 23:18:35.767655289 +0800

    Change: 2016-12-06 23:18:35.767655289 +0800

     Birth: –

     

     

Access: 2016-12-06 23:18:37.841655271 +0800         最近访问

Modify: 2016-12-06 23:18:35.767655289 +0800         最近更改,数据

Change: 2016-12-06 23:18:35.767655289 +0800         最近改动,元数据

###touch    创建文件,更改时间戳

> -c  指定的文件路径不存在时不予创建

> -a  仅修改access time;

> -m  仅修改modify time;

> -t  指定修改时间戳

##5.别名,引用结果

alias 定义别名

alias cdnd='cd /var/named/chroot/var/named/'

用管道连接程序,实现将前一个命令的输出直接定向给后一个程序当作输入数据流

    [root@cloud test]# cat /etc/issue |tr 'a-z' 'A-Z'

    \S

    KERNEL \R ON AN \M

    

##6.显示/var目录下,所有以1开头,以一个小写字母结尾,且中间至少出现一位数字的文件或目录

    ls -d /var/1*[0-9]*[a-z]

    

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

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

    

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

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

    

##9.在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,

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

    

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

    [root@WH-DNS-00 named]# mkdir /tmp/mytest1

    [root@WH-DNS-00 named]# cp -r /etc/p*[^0-9] /tmp/mytest1/

    

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

    [root@cloud ~]# mkdir /tmp/mytest2

    [root@cloud ~]# cp -r /etc/*.d /tmp/mytest2/

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

    [root@cloud ~]# mkdir /tmp/mytest3

    [root@cloud ~]# cp -r /etc/[1mn]*.conf /tmp/mytest3

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

(0)
lanpanglanpang
上一篇 2016-12-09 10:52
下一篇 2016-12-09 16:03

相关推荐

  • 第二周博客作业

      '经过了两周的学习,对Linux有了更深的认识,学习到了很多的新知识,在此进行总结。一、Linux上的文件管理类命令都有哪些,其常用的使用方法及相关示例演示。答:Linux常用的文件管理类命令主要有以下几个:  cp,mv,rm,mkdir,rmdir,install,touch;  cp命令:  作用是拷贝文件或文件夹,其用法为:  cp […

    Linux干货 2016-12-12
  • 马哥教育网络班21期+第五周课程练习

    第五周作业 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; cat /boot/grub/grub.conf  | grep "^[[:space:]]\+" 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至…

    Linux干货 2016-10-17
  • 文本处理工具sed、vim

    文本处理工具sed、vim 一、sed的使用 1、sed的概念 sed简单地说sed是一种行处理工具。 sed 是一种流性的行编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space ),接着用sed 命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末…

    Linux干货 2016-08-11
  • 脚本又见脚本,作业又是作业_第七周

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@centos ~]# fdisk -l &n…

    Linux干货 2016-12-30
  • 马哥教育网络班22期+第一周课程练习

        操作系统:centos 7.2  64位 计算机组成及功能。 计算机组成: 由存储器、运算器、控制器、输入设备、输出设备组成。 功能: 存储器:用来存放计算程序及参与运算的各种数据;例如:硬盘、内存 运算器:负责数据的算术运算和逻辑运算即数据的加工处理 控制器:负责对程序规定的控制信息进行分析,控制并…

    Linux干货 2016-08-15
  • Hello World

    随笔

    Linux干货 2018-03-26

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-16 17:05

    赞,能注意下排版会更好~