马哥教育网络班20期+第1周课程练习

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

相关命令:

    目录管理:

        pwd:显示当前工作目录

        cd: 目录间跳转

           cd – :在上一个目录和当前目录间跳转

           cd 或 cd ~ :回当前用户的家目录

        ls:显示当前目录下的内容

           ls -l: 长格式显示   drwxr-xr-x.   3 root root  443  15 6月  12 12:01 opt

              drwxr-xr-x :最左侧代表文件类型

                      -:普通文件

                      d:目录

                      l:链接文件

                      b:块设备

                      c:字符设备

                      p:管道文件

                      s:套接字文件

                   rwxr-xr-x:每三位分别对应属主属组其他用户的读写执行权限。

                         3:文件被硬链接次数

                         root:文件的属主

                         root:文件的属组

                         数字:文件大小

                         date:文件最后一次被修改的时间

              ls -h (human-readable): 单位换算,人可读

              ls -d : 显示目录自身的相关属性

           ls -r : 逆序显示

           ls -R : 递归显示

         mkdir:创建目录 

              -p: 自动创建所需的各目录

              -v: 显示细节

              -m: 创建时直接指定权限

         rmdir:删除空目录

         tree: 树状显示目录下内容

             -d:只显示目录

             -L #:level 显示几个层级

             -P pattern :只显示由指定pattern匹配到的路径

    文件查看类命令:

         cat:查看文件

         tac:逆序查看文件

         more,less:查看文件 可翻页查看

         head:

            -c #:截取前#个字节

            -n #:截取前n行

         tail:

            -c #: 截取后#个字节

            -n #:截取后n行

   文件时间戳管理命令:

         touch :

           三个时间戳:

               access time:访问时间,简写为atime,读取文件内容时改变

              modify time: 修改时间,简写为mtime,修改文件内容时改变

               change time:改变时间,简写ctime,元数据发生改变时改变

              -a:only access time

              -m: only mtime

              -c: 如果文件不存在,则不给予创建

     

    文件管理:

         cp:拷贝 cp SRC DEST

           SRC是文件:

                DEST:不存在:新建,拷贝填充

                    文件存在:覆盖

                    DEST是目录:则在其下创建新的,拷贝填充

           SRC是多文件:

                DEST必须是目录且存在

           SRC是目录:

                必须使用-r选项

                DEST不存在:则创建指定目录,复制SRC目录中的所有文件到DEST中去

                DEST存在,且必须是目录,否则报错

                常用选项:

                  -r:递归复制

                  -i:交互式

                  -a:归档式复制

                  -p:–preserve=mode,ownership,timestamp

                  -v: 可见

                  -f: force

         mv:移动

              mv SRC DEST

         rm:删除

              -i:交互式删除

              -r: 递归删除

              -f: 强制删除

           

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

工作特性:

     (1)命令历史:

           history:内容存储在~/.bash_history

                history #: 显示命令历史中最近的#条

                history -a:追加当前回话缓冲区的命令历史至历史文件

           调用命令历史中的命令:

                !#:调用哪一条命令

                !!:上一条命令

                !string:匹配上一次string的命令

           调用上一次的最后一个参数:

                !$:

                ESC, .

                Alt+.

     (2) 命令补全 Tab键

     (3) 路径补全

    (4)命令行展开

    (5)命令的执行结果状态

    (6)命令别名 alias NAME="value"

            仅对当前用户:~/.bashrc

            对所有用户有效:/etc/bashrc

     (7)glob 

          1.通配符:*,?,[],[^]

          2.专用字符集和:

             [:digit:],[:lower:],[:upper:],[:alpha:],[:alnum:],[:grapha:]       

     (8)bash快捷键

    (9)bash的IO重定向及管道

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

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

      touch /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 /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 test]# stat sort.sh 

  文件:"sort.sh"

  大小:63         块:8          IO 块:4096   普通文件

设备:fd01h/64769d Inode:104058236   硬链接:1

权限:(0755/-rwxr-xr-x)  Uid:(    0/    root)   Gid:(    0/    root)

环境:unconfined_u:object_r:user_tmp_t:s0

最近访问:2016-06-14 21:48:14.750364346 +0800

最近更改:2016-06-14 21:48:32.367570367 +0800

最近改动:2016-06-14 21:48:32.367570367 +0800

创建时间:-


touch -a: 只改变访问时间

touch -m:只改变修改时间

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

   alias name="command"

   $(command)或者`command`


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

   ls /var/ | grep "^1.*[[:digit:]]\+.*[[:lower:]]$"


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

   ls /etc/ | grep "^[[:digit:]].*[^[:digit:]]$"

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

   ls /etc/ | grep "^[^[:alpha:]][[:alpha:]].*"


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

    cd /tmp/ 

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


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

  cp -r $(ls /etc | grep "^p.*[^[:digit:]]$") /tmp/mytest1


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

 cp -r $(ls /etc/ | grep "\(\.d\)$") /tmp/mytest2


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

 cp $(ls /etc/ | grep "^[1,m,n].*\(\.conf\)$")  /tmp/mytest3

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

(0)
love_in_linuxlove_in_linux
上一篇 2016-06-23
下一篇 2016-06-23

相关推荐

  • ​文件系统层级结构标准

    多数Linux发行版遵从FHS标准并且声明其自身政策以维护FHS的要求。 [1] [2] [3] [4] 然而,包括由自由标准小组成员在内开发的绝大多数发行版(截至2009年),并不完全执行建议的标准。
    当FHS创建之时,其他的UNIX和类Unix操作系统已经有了自己的标准,尤其是hier(7)文件系统布局描述。 自从第七版Unix(于1979年)发布以来已经存在,或是SunOS filesystem(7), [5] 和之后的Solaris filesystem(5)。 例如,Mac OS X使用如 /Library、 /Applications和/Users 等长名与传统UNIX目录层次保持一致。
    现在的Linux发行版包含一个/sys目录作为虚拟文件系统(sysfs,类似于 /proc,一个procfs),它存储且允许修改连接到系统的设备,然而许多传统UNIX和类Unix操作系统使用/sys作为内核代码树的符号链接。
    一些Linux系统如GoboLinux和Syllable Server使用了和FHS完全不同的文件系统层次组织方法。

    Linux干货 2016-10-17
  • N24_阿龙弟弟 学习计划/目标/宣言

    嗨,大家好,这是我的第一篇文章。很高兴来到马帮门徒这个大家庭。 学习计划:没有自己的计划,跟着马哥课程的进度来吧,以周为单位,确保每周任务完成; 学习目标:掌握应有的运维能力,做一名合格的Linux运维工程师,提升自我价值,过更好的生活; 学习宣言:Be a better man(Not Only Linux)!

    Linux干货 2016-10-25
  • Bind编译安装详解

    Bind编译安装详解 Bind是一款开放源码的DNS服务器软件,由美国加州大学Berkeley分校开发和维护的,全名为Berkeley Internet Name Domain它是目前世界上使用最为广泛的DNS服务器软件,支持各种unix平台和windows平台。现今互联网上最常使用的DNS服务器软件,使用BIND作为服务器软件的DNS服务器约占所有DNS服…

    Linux干货 2016-07-22
  • LVS介绍

    LVS介绍     LVS是linux virtual server的简写,是服务器集群的一种负载均衡解决方案,作为netfilter的补充套件,工作于内核空间。     常见的术语 CIP:客户端ip地址 RIP:后端服务器ip地址 VIP:lvs面向客户端的ip地址 DIP:lvs面向…

    Linux干货 2017-08-04
  • php 配置

      php php不能单独使用都是与httpd结合使用 结合的方式主要是两种一种为模块方式服务于httpd,一种为单独服务方式服务httpd 两种方式不能共存 安装软件包也不相同 网上有官方中文手册 http://php.net/download-docs.php php对中文的支持需要安装php-mbstring php对mysql的支持需要安装…

    Linux干货 2016-11-01
  • 打造自己小小的RPM包

    关于源码RPM包的安装于制作 什么是RPM与SRPM? 1     RPM: 1     SRPM: 2     SRPM的安装 2 一 .利用rpmbuild默认安装SRPM档案 2 二.配置路径与需要的软件功能模块 3  &n…

    Linux干货 2016-08-24

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-23 11:38

    写的很棒,cp的时候是不是可以直接支持正则表达式那?可以尝试一下