第二周-作业

第二周作业:

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

Linux上常见的文件管理类命令有mkdir、touch、cp、mv、rm、stat。

    mkdir:创建新目录

        用法:mkdir /PATH/TO/NEW_DIR

        示例:~]# mkdir -p -m 777 /tmp/a/test

    touch:创建文件及修改时间戳

        用法:touch /PATH/TO/NEW_FILE

        示例:~]# touch /tmp/a/test/new_file

        修改时间戳的选项:

            -a:修改access time

            -m:修改modify time

    cp:拷贝文件

        用法:cp /PATH/TO/OLD_FILE PATH/TO/NEWFILE

        示例:~]# cp /tmp/a/test/new_file /tmp/a/test/new_file2

        需要注意:

            拷贝目录时,加-r表递归复制

            在测试时发现,由于cp是cp -i的别名,所以覆盖时会有询问,在脚本中实施即使加-f在覆盖多个文件时也会有询问,因此一般用\cp来使用,表不用cp -i别名

    mv:移动或重命名文件

        示例:~]# cp /tmp/a/test/new_file /tmp/a/test/new_file2

    rm:删除文件或目录

        示例:rm -rf /

        需要注意:删除操作非常危险,因此应该自己在系统上使用一个路径模拟回收站,把需要删除的文件先mv到模拟回收站上

    stat:查看文件状态属性

        示例:~]# stat /etc/crontab

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

1、命令执行状态返回值

返回值用于判定命令执行正确与否

    示例:

        ~]# cd /etc/ssssss > /dev/null

        ~]# echo $?

        结果:1

2、命令行展开

以bash能够解释的符号来代替命令中的一些重复字段

    示例:

        ~]# cd ~

        ~]# touch /tmp/a/test/{w,t}

题3:使用命令行展开完成以下练习

(1)创建/tmp目录下的:a_c,a_d,b_c,b_d

    ~]# touch /tmp/a_{c,d} /tmp/b_{c,d}

(2)创建/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}}

    验证:

    [root@www ~]# tree /tmp/mylinux/

    /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:文件的元数据信息有哪些,分别表示什么含义,如何查看,如何修改文件的时间戳信息。

[root@localhost ~]# stat test

File: `test'

Size: 0         Blocks: 0          IO Block: 4096   regular empty file

Device: fd00h/64768d Inode: 2097162     Links: 1

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

Access: 2016-12-07 08:52:40.587661871 -0500

Modify: 2016-12-07 08:52:40.587661871 -0500

Change: 2016-12-07 08:52:40.587661871 -0500

输出结果释义:

    File:文件名

    Size:文件大小

    Block:占据多少磁盘块

    IO Block:一个磁盘块大小为4096k

    regular empty file:常规的空文件

    Device:文件所在设备主编号和次编号

    Inode:inode编号

    Linux:文件被硬链接的次数,1表示没有硬链接

    第一个Access:权限,属主uid及名字,属组gid及名字

    第二个Access:文件最后一次被访问的时间

    Modify:文件的数据最后一次被修改的时间

    Change:文件的元数据最后一次变化的时间

修改文件的时间戳:touch

    ~]# touch -m -t 201312011002.15  test

    ~]# touch -c -t 201102010802  test

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

定义别名:

    1、临时

    ~]# alias clear=cln

    2、永久

    定义在~/.bashrc或者/etc/bashrc

命令中引用另一个命令的执行结果:

    例:~]# echo -e "look here\n $(who)"

    使用反引号“、$()

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

    ~]# find  /var/  -name  "l[0-9]*[a-z]"

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

    ~]# find /etc/ -name "[0-9]*[^0-9]"

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

    ~]# find /etc/ -name "[^[:alpha:]][[:alpha:]]*"

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

    ~]# touch /tmp/tfile-`date +%Y-%m-%d-%H-%M-%S`    

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

    ~]# cp -r /etc/p*[^[:digit:]] /tmp/mytest1

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

    ~]# cp -r /etc/*.d /tmp/mytest2

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

    ~]# cp -r /etc/[lmn]*.conf /tmp/mytest3

原创文章,作者:N25_水煮鱼,如若转载,请注明出处:http://www.178linux.com/62991

(0)
N25_水煮鱼N25_水煮鱼
上一篇 2016-12-08 00:46
下一篇 2016-12-08 16:52

相关推荐

  • DNS高级应用之子域授权&区域转发

    一、环境准备:    1、准备三台测试服务器,划分如下:    主DNS服务器:eth0:192.168.10.203;负责mylinux.com域解析;确保可以正常解析      子域DNS服务器:eth0:192.168.10.120; 负责子域ops.mylinux.com解析; &…

    Linux干货 2015-06-01
  • bash语句的具体应用之“显示/etc/passwd文件中ID号最大的用户的用户名​”

    问题:显示/etc/passwd文件中ID号最大的用户的用户名 回答:sort -t; -k3 -n /etc/passwd | tail -1 |cut -d: -f1 看似很简答的一个回答,其实其中包含了多个命令的使用方法: 第一个用到的命令:sort sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式:  sort [-bcfMnrt…

    Linux干货 2016-04-11
  • 网卡别名与bonding配置

    我们知道,一般来说,一个硬件地址对应与一个IP地址。但在一些情况下,我们可以通过一些方法打破硬件地址与IP地址的一一对应关系。下面就来说一下网卡别名与bonding配置。 网卡别名就是将多个IP地址绑定到一个网络接口上,其命名方式为IFACE:num,如eth0:1等。需要注意的是,网卡别名仅对虚拟主机有效。创建网卡别名有两种方式: 1、ifconfig命令…

    Linux干货 2016-09-05
  • 20160907 centos启动流程

    1、centos5,6启动流程 centos系统启动流程linux系统的组成部分:内核+根文件系统内核:进程管理,内存管理,网络协议栈,文件系统,驱动程序,安全功能运行的系统环境可分为两层:内核空间,用户空间  用户空间:应用程序(进程或线程)  内核空间:内核代码(系统调用)    内核设计流派:   &n…

    Linux干货 2016-09-13
  • “lnmap实战之负载均衡架构(无高可用)”之新增keepalived高可用

    “lnmap实战之负载均衡架构(无高可用)”之新增keepalived高可用 我之前有一篇”lnmap实战之负载均衡架构(无高可用)“博客是专门部署了lanmap,之前没有做高可用,那么我们现在就把高可用补上去吧 这样我们照着之前的文档从新部署一下 1.机器结构如下: 192.168.42.150 node0 …

    Linux干货 2017-06-25
  • RAID 0 软件实现

    RAID 0 软件实现        RAID 0又称为Stripe或Striping,它代表了所有RAID级别中最高的存储性能。RAID 0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行…

    Linux干货 2017-05-02

评论列表(1条)

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

    赞~~总结的很仔细~如果能使用markdown来格式化输出会更好~加油~