第二周作业

# 第二周作业

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

相关推荐

  • BIND在生产环境中的创建

    一、实验:BIND二级域的搭建(均以yum安装bind),从实验图中可以看出需要五台虚拟机进行测试 一、准备五台虚拟机 二、配置root服务器 1、YUM安装bind的程序 2、配置bind的主配置文件 3、配置区域文件 4、为了实验的方便进行,把防火墙和SElinux关闭,并留意区域文件的属主属组 5、检查named的主配置文件和区域文件是否语法错误,并启…

    Linux干货 2016-10-05
  • 编译安装LAMP-centos7

    编译安装LAMP (centos7 基于模块化) 编译安装所需版本 Httpd 2.4,PHP 5.4,MariaDB 5.5通用二进制格式(绿色安装包) MAriDB5.5 绿色安装 1、#mkdir lamp :创建一个文件夹,存放软件的版本 2、从官网上下载httpd2.4 mariaDb 5.5 PHP 5.4到该文件夹下 3、# tar xvf m…

    Linux干货 2017-05-17
  • SELinux详解及其优缺点

    SELinux简介:        SELinux:Secure Enahanced Linux 安全增强的Linux SELinux是2.6版本的Linux内核中提供的强制访问控制(MAC)系统。对于目前可用的Linux安全模块来说,SELinux是功能最全面,而且测试最充分的…

    Linux干货 2017-05-21
  • PHP的类自动加载机制

    在PHP开发过程中,如果希望从外部引入一个class,通常会使用include和require方法,去把定义这个class的文件包含进来。这个在小规模开发的时候,没什么大问题。但在大型的开发项目中,这么做会产生大量的require或者include方法调用,这样不因降低效率,而且使得代码难以维护,况且require_once的代价很大。 在PHP5之前,各个…

    Linux干货 2015-04-10
  • N26第一周作业

    第一周作业   1. 描述计算机的组成及其功能。   计算机主要由处理器(CPU)、存储器、输入设备、输出设备。 CPU由运算器、控制器、寄存器、缓存器组成,提供运算。 存储器即内存,RAM(Random Access Memory),内存为cpu运算时提供数据存储。 Input:用户下指令的设备,使计算机能够与用户进行交互。 Outpu…

    Linux干货 2017-01-03
  • Mariadb数据库复制系列(二):主主复制

       实验二:MySQL双主复制架构的实现 双主的实现方式与主/从类似,仅是两个主机即使主节点,又是对方的从节点双主模型容易造成数据的不一致性,因此要慎用! 1、实验环境 2、在两个节点上安装mariadb-server服务 3、修改两个节点的服务器配置文件 4、两个节点上各自启动服务,各授权一个具有复制权限的用户 5、查看两个节点的二进制日志的状态 6、在…

    Linux干货 2016-11-24

评论列表(1条)

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

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