马哥教育网络班20期+第二周博客作业

1.     linux上的文件管理类命令

1.1.       目录管理类命令

cd [dir] 切换目录

pwd: 显示当前目录

ls [OPTION]… [DIR]…

                             -a, –all: 显示所有文件,包括隐藏文件;

                             -l: 长格式

                                       -rw-r–r– 1 root root 44800 Aug 14 14:32 install.log

                                                -rw-r–r–:

                                                         最左侧的第一位:文件类型

                                                                   -, d, l, b, c, p, s

                                                         后面的9位:访问权限,perm

                                                数字:文件被硬链接的次数;

                                                左root: 文件的owner

                                                右root: 文件的group

                                                44800:文件的size

                                                Aug 14 14:32 : 文件的最近一次被修改的时间

                                                install.log: 文件名

                             -h, –human-readable:单位换算

                             -d: 显示目录自身的相关属性;通常要与-l一起使用;

                             -r, –reverse: 逆序显示

                             -R, –recursive: 递归

     mkdir [options] /path/to/somewhere

               -p: 存在于不报错,且可自动创建所需的各目录;

               -v: 显示详细信息

               -m MODE: 创建目录时直接指定权限;

 

     tree:

               -d: 只显示目录

               -L level:指定显示的层级数目

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

 

     rmdir:删除空目录

               rmdir [OPTION]… DIRECTORY…

                       -v: 显示过程;

1.2. 文本文件查看类命令

                            cat [OPTION]… [FILE]…

                                     -E: 显示行结束符$

                                     -n: 对显示出的每一行进行编号:

                 

                            more [OPTIONS…] FILE…

                                     -d: 显示翻页及退出提示

 

        

                            less [OPTIONS…] FILE…

 

        

                            head [OPTION]… [FILE]…

                                     -c #: 指定获取前#字节

                                     -n #: 指定获取前#行

                                     -#

 

                   

                            tail [OPTION]… [FILE]…

                                     -c #: 指定获取后#字节

                                     -n #: 指定获取后#行

                                     -f: 跟踪显示文件新追加的内容;

         1.3. 文件管理类命令

                                     cp [OPTION]… [-T] SOURCE DEST

                                               SRC是文件:

                             如果目标不存在:新建DEST,并将SRC中内容填充至DEST中;

                             如果目录存在:

                                      如果DEST是文件:将SRC中的内容覆盖至DEST中;

                                                此时建议为cp命令使用-i选项;

如果DEST是目录:在DEST下新建与原文件同名的文件,并将SRC中内容填充至新文件中;

                              cp [OPTION]… SOURCE… DIRECTORY

                                               SRC…:多个文件

                                       DEST必须存在,且为目录,其它情形均会出错;

                    cp [OPTION]… -t DIRECTORY SOURCE…

                                                        SRC是目录:

                                                此时使用选项:-r

 

如果DEST不存在:则创建指定目录,复制SRC目录中所有文件至DEST中;

                                                如果DEST存在:

                                                         如果DEST是文件:报错

                                                 -i:交互式

                              -r, -R: 递归复制目录及内部的所有内容;

                              -a: 归档,相当于-dR –preserv=all

                                      -d:–no-dereference –preserv=links

                                       –preserv[=ATTR_LIST]

                                                mode: 权限

                                                ownership: 属主属组

                                                timestamp:

                                                links

                                                xattr

                                      context

                                      all

                              -p: –preserv=mode,ownership,timestamp

                              -v: –verbose

                              -f: –force          如果DEST是目录:询问是否覆盖原文件

                                     mv: move,移动文件

                                               -i: 交互式

                                        -f: 强制

                                     rm [OPTION]… FILE…删除文件

-i: 交互式

                                  -f: 强制删除

                                  -r: 递归

2.       bash特性

2.1.     bash命令的执行状态结果

 成功:0

失败:1-255

              echo $?:输出状态结果 

2.2 命令行展开

~ :展开为用户的主目录 
~ HOMENAME:展开指定用户的家目录 
{}:以逗号分隔,并展开为多个路径

 

 

3.       使用命令行展开功能完成练习

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

      [root@localhost tmp]# mkdir {a,b}{c,d}

[root@localhost tmp]# ls

ac  ad  bc  bd

[root@localhost tmp]#

3.2 创建指定目录

[root@localhost tmp]# mkdir -p 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@localhost tmp]# tree 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

 

24 directories, 0 files

4.       元数据

元数据使用stat查看

三个时间戳:

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

                     modify time: 修改时间, mtime,改变文件内容(数据)

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

       使用touch命令修改时间戳

                     touch [OPTION]… FILE…

                            -a: only atime

                            -m: only mtime

                            -t STAMP:

                             [[CC]YY]MMDDhhmm[.ss]

                           

5.       别名

定义别名可以使用alias命令实现

      alias NAME='VALUE'

                    定义别名NAME,其相当于执行命令VALUE

也可以在配置文件中定义

             ~/.bashrc : 仅对当前用户

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

5.1.管道

      COMMAND1 | COMMAND2 | COMMAND3 |…

      | 后面的命令引用前面命令的结果

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

      ls -d /var/l*[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开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22

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

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

              cp -R /etc/p*[^0-9]  /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/

              

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

(0)
上一篇 2016-06-23 11:10
下一篇 2016-06-23 11:11

相关推荐

  • 负载均衡LVS原理及其应用

    一、LB常用解决方案     1. 硬件负载均衡解决方案:          F5公司: BIG-IP         Citrix公司: …

    Linux干货 2015-12-28
  • 源码编译安装http

    为什么需要编译安装软件?   1、软件在编译期间需要配置:比如需要指定安装路径,定制模块等功能;   2、软件需要统一安装路径:在编译安装时可以方便指定这些路径;   3、需要最新的版本:对于某些软件来说可能需要最新的版本。 编译前的准备工作:     1、安装开发工具:make、gcc等…

    Linux干货 2016-08-24
  • shell打印选择菜单shell

    每天一练小脚本

    Linux笔记 2018-05-19
  • 权限管理与ACL

    一、文件属性 1.文件属性:    文件属性操作     chown : change owner  ,设置文件所有者     chgrp : change group  ,设置文件的属组    文件属主修改: chow…

    Linux干货 2016-08-05
  • linux之网络管理基础

    一.IP分配的概述 公式1 一个网段的主机数=2^主机位数-2 主机ID位数=32-网络ID位数 公式2 网络ID=IP与子网掩码 公式3 划分子网: 一个大网分成若干个小网 网络ID向主机位借位n,子网数2^n 公式4 损失IP-=(子网数2^n-1)*2 合并多个小子网成一个大的超网 如 172.16.0.0-172.31.0.0 就是主机ID向网络ID…

    Linux干货 2016-09-16
  • 第四周小练习

    复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限 cp -r /etc/skel /home/tuser1 chmod -R go= /home/tuser1 编辑/etc/group文件,添加组hadoop echo&…

    Linux干货 2016-11-29

评论列表(1条)

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

    写的很棒,把命令的常用参数都列举出来了,如果在添加一些案例会更好,另外可以关注一下排版,可以做的更美观,第10、12有点小瑕疵,在看看题目修改一下,加油