第二周作业

# 第二周作业

##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
下一篇 2016-12-09

相关推荐

  • 内核体系

    单内核体系设计、但充分借鉴了微内核设计体系的优点,为内核引入模块化机制。 内核组成部分核心,一般为bzImage,通常在/boot目录下,名称为vmlinuz-VERSION-RELEASE;: kernel: 内核 kernel object: 内核对象,一般放置于/lib/modules/VERSION-RELEASE/ [ ]: N [M]: M [*…

    Linux干货 2015-09-02
  • 二、(4)bash的基础特性之:alias命令及文件名通配

    alias命令 在bash中,允许用户使用和创建命令的别名 用法: 查看:可以使用alias命令来获取当前可用的命令别名: 如第一行:alias cp=’cp -i’,将cp -i命令定义别名为:cp 创建:上图中,alias所展示的也是创建别名的方法,即:alias NAME=’COMMAND’ 注意:图中举例将ls -l命令创建别名为ls,此时原命令ls…

    2018-01-12
  • chmod 没有执行权限的解决办法 [转载http://www.fblinux.com/?p=30]

    chmod没有权限,貌似就算是root用户也无法授权,这可咋办?chmod是设置权限的命令,但是自身没有了执行权限,那么就表示没有办法更改其他命令的权限,也没有办法改变自己的权限。 1 2 3 4 [root@localhost ~]# ll /bin/chmod ———-. 1 root root 48712 Oct 15 2014 …

    Linux干货 2017-01-01
  • LVS-fwm&persistence

    Evernote Export 1、LVS-fwm fwm:FireWall Mark        在netfilter上给报文打标记;mangle表;        ipvsadm -A|E -t|u|f service-address [-s scheduler] &nbs…

    Linux干货 2016-12-01
  • 用shell脚本打等腰三角新

       *   ***  ***** *******   预览图形 发现图形由三个变量组成 行数n 每行的空格数a 和每行的符号数b 关系是    a=n-当前行数    b=2xn-1   并且空格都在符号前 根据关系编写脚本 #!/bin/bash read…

    Linux干货 2016-08-22
  • Linux终端类型

      终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。   在Linux系统的设备特殊文件目录/dev/下,终端特殊设备文件一般有以下几种:   1、串行端口终端 /dev/ttySn     串行端口终端是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个…

    Linux干货 2016-10-14

评论列表(1条)

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

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