N26-第二周

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

  1)alias:命令别名;

    # alias ;获取所有可用别名的定义;

    # alias NAME=‘COMMAND’:定义别名;

        ~]# alias hello='ls' 

        ~]# hello /tmp/

        19-52-46  1abc   a_c  b_c   

    # unalias NAME ;撤销别名;

        ~]# unalias hello

  2)which:shows the full path of (shell) commands

    which [options] programname […]

    

     ~]# which ls

     alias ls='ls –color=auto'

     /usr/bin/ls

    不显示命令别名:

    ~]# \which ls

    /usr/bin/ls

    ~]# which ls –skip-alias

    /usr/bin/ls

  3)whereis :locate the binary, source, and manual page files for a command

    whereis [options]  name…

       -b     Search only for binaries.

            仅搜索二进制程序路径;

         -m     Search only for manuals.

              仅搜索使用手册文件路径;

  4)history:命令历史;

    

    (1)定制history的功能,可通过环境变量实现:

     HISTSZIE:shell进程可保留的命令历史的条数:

     [root@localhost ~]# echo $HISTSIZE

     1000

     HISTFILE:持久保存命令历史的文件; .bash_history

     [root@localhost ~]# echo $HISTFILE

     /root/.bash_history

     HISTFILESIZE:命令历史文件的大小;

     [root@localhost ~]# echo $HISTFILESIZE

     1000

    (2)命令用法:

     history [-c] [-d 偏移量] [n] 

    或 

     history -anrw [文件名] 

    或 

    history -ps 参数 [参数…]

        -c        删除所有条目从而清空历史列表。

         -d offset偏移量 从指定位置删除历史列表。

         -w        将当前历史写入到历史文件中,并追加到历史列表中

         -r  从文件读取命令历史至历史列表中

         -w  把历史列表中的命令追加至历史文件中

      # history NUMBER :显示最近的NUMBER条命令

   (3)调用命令历史列表中的命令:

      !NUM :再一次执行历史列表中的第NUM条命令;

      !!  :再一次执行上一条命令;

      !STRING:再一次执行命令历史列表中最近一个以STRING开头的命令;

       注意:命令的重复执行有时候需要依赖于幂等性:(可成功执行)

      调用上一条命令的最后一个参数:

      a)快捷键:ESC键+. 

       b)字符串:!$

   (4)控制命令历史记录的方式;

      环境变量:HISTCONTORL

           [root@localhost ~]# echo $HISTCONTROL

          ignoredups

       ignoredups:忽略重复的命令;

       ignorespace:忽略以空白字符开头的命令;

       ignoreboth:以上两者同时生效;

  5)文件查看类命令:

   (1)more命令:

     more FILE

    特点:翻屏至文件尾部后自动退出;

   (2)less命令:

     less FILE

     man调用的就是less命令

   (3)head命令:

     查看文件的前n行;默认10行;

     head [options] FILE

         -n [NUM]

         -[NUM]

   (4)tail命令:

     查看文件的后n行;默认10行;

     tail [options] FILE

         -n [NUM]

         -[NUM]

         -f:查看文件尾部内容结束后不退出,跟随显示新增内容;

   (5)stat命令:

     stat – display file or file system status

     stat  FILE…

  6)touch :change file timestamps       

        touch [OPTION]… FILE…

             -c:指定的文件路径不存在时,不予创建;

             -a:改变访问时间,access time

             -m:改变更改时间,modify time

             -t:STAMP

                   [[CC]YY]MMDDhhmm[.ss] 

        touch FILE  创建空文件

  7)cp:copy    

    单源复制:cp [OPTION]… [-T] SOURCE DEST

     多源复制:cp [OPTION]… SOURCE… DIRECTORY

         cp [OPTION]… -t DIRECTORY SOURCE…

     (1)单源复制:cp [OPTION]… [-T] SOURCE DEST

       如果DEST不存在,则事先创建此文件,并复制源文件的数据流至DEST中;

       如果DEST存在:

         如果DEST是非目录文件:则覆盖目标文件;

         如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;

     (2)多源复制:cp [OPTION]… SOURCE… DIRECTORY

             cp [OPTION]… -t DIRECTORY SOURCE…

       如果DEST不存在:错误;

       如果DEST存在:

         如果DEST是非目录文件,错误;

         如果DEST是目录文件,分别复制每个文件至目标目录中,并保持原名;

     (3)常用选项:

        -i:交互式复制,即覆盖之前提醒用户确认;

        -f:强行覆盖目标文件;

        -r,-R:递归复制目录;复制目录及目录中文件;

        -d:复制符号链接文件本身,而非其指向的源文件;

        -a: -dR –preserve=all,archive,用于实现归档;

        –preserv=

        mode:权限

             owership:属主和属组

        timestamps:时间戳

        context:安全标签

        xattr:扩展属性

        links:符号链接

        all:上述所有属性

  8)mv:move  

    mv [OPTION]… [-T] SOURCE DEST

     mv [OPTION]… SOURCE… DIRECTORY

     mv [OPTION]… -t DIRECTORY SOURCE…

      常用选项:

      -i:交互式;

      -f:force

 9)rm:remove    

     rm [OPTION]… FILE…

      常用选项:

      -i:交互式;

      -f:force

          -r:递归删除目录,recursive

      删除目录:rm -rf /PATH/TO/DIR

      危险操作:rm -rf /*

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

    1)命令执行的状态结果:

    bash通过状态返回值来输出此结果:

        成功:0

         失败:1-255

    命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;  

        [root@localhost etc]# ls dd

        ls: 无法访问dd: 没有那个文件或目录

        [root@localhost etc]# echo $?

        2

         [root@localhost etc]# lss

        -bash: lss: 未找到命令

        [root@localhost etc]# echo $?

        127

    命令正常执行时,有的还会有命令返回值:

    根据命令及其功能不同,结果各不相同;

    

    2)引用命令的执行结果:

     $(COMMAND)

    

     `COMMAND`

         [root@localhost tmp]# mkdir $(date +%H-%M-%S)

         [root@localhost tmp]# ll

         总用量 4

         drwxr-xr-x. 2 root root   6 2月   8 19:52 19-52-46

         [root@localhost tmp]# mkdir $(date +%H-%M-%S)

         [root@localhost tmp]# ll

              总用量 4

         drwxr-xr-x. 2 root root   6 2月   8 19:52 19-52-46

         drwxr-xr-x. 2 root root   6 2月   8 19:52 19-52-54

    3)命令行展开:    

    ~ :自动展开为用户的家目录,或指定的用户的家目录;

    {};可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径;

    1、创建/tmp/x/y1,/tmp/x/y2,/tmp/x/y1/a,/tmp/x/y1/b 目录;

    blob.png

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

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

    blob.png

  2)创建/tmp/mylinux目录;

blob.png

blob.png

4、文件的元数据信息有哪些,分表表示什么含义,如何查看?如何修改文件的时间戳信息。

  1)任何文件系统中的数据分为数据和元数据。数据是指普通文件中的实际数据,而元

数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息(inode…)等等。在集群文件系统中,分布信息包括文件在磁盘上的位置以及磁盘在集群中的位置。用户需要操作一个文件必须首先得到它的元数据,才能定位到文件的位置并且得到文件的内容或相关属性。

  2)stat:display file or file system status

    stat  FILE…  

    blob.png

  3)时间戳:

    access time(最近访问)

    modify time(最近更改)

    change time(最近改动)

  4)touch:change file timestamps

     touch [OPTION]… FILE…

         -c:指定的文件路径不存在时,不予创建;

         -a:改变访问时间,access time

         -m:改变更改时间,modify time

         -t:STAMP

              [[CC]YY]MMDDhhmm[.ss] 

     (1)更改访问时间(access time):

    blob.png

    (2)更改更改时间(modify time)    

    blob.png

    

    (3)使用[[CC]YY]MMDDhhmm[.ss]格式更改成确切的时间:    

    blob.png

    (4)也可以使用-d,改变日期;    

    blob.png

    

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

  1)定义命令别名:

    blob.png

  2)重定向:

    (1)> :覆盖输出

      >>:追加输出

        blob.png

   (2)错误输出流重定向:2> ; 2>>

   (3)合并正常和错误输出流:

     1)&> ; &>>

     blob.png

    (4)合并输出:

       blob.png

    (5)命令的引用:

     blob.png

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

  blob.png

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

  blob.png

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

  blob.png

9、在/tmp目录下创建以tfile开头,后跟当前日子和时间的文件。

  blob.png

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

  blob.png

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

  blob.png

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

  blob.png

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

(0)
徐 琦徐 琦
上一篇 2017-02-11 11:20
下一篇 2017-02-11 13:34

相关推荐

  • Linux进程管理

    Linux进程及作业管理      内核的功用:          进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能          Process: 运行中的程序的一个副本;      …

    Linux干货 2017-01-05
  • Linux下XFS、Ext2文件系统对比、文件管理、inode、文件名、标准I/O、管道|tee、tr -cs blog by fazionlan July.31st

    Linux下XFS、Ext2文件系统对比、文件管理、inode、文件名、标准I/O Ext2、Fat、XFS文件系统   文件系统是对一个存储设备上的数据和元数据进行组织的机制,文件系统的创建是在格式化分区的过程中完成的(一个分区就是一个系统),众所周知Windows操作系统使用的文件系统是FAT与NTFS;Linux不同的发行版本使用的文件系统主…

    Linux干货 2016-08-01
  • ☞keepalived

    keepalived 高可用集群 VRRP协议 keepalived 安装keepalived 主要文件 配置文件说明 【一】测试keepalived基本功能 单主模型示例 双主模型示例 通知脚本示例 【二】单主模型高可用DR类型LVS集群 配置keepalived主机 Real Server配置 测试结果 【三】双主模型高可用DR类型LVS集群 配置kee…

    Linux干货 2016-11-01
  • 模拟centos6.8系统下initramfs文件和vmlinuz文件损坏恢复

    实验一:关于删除initramfs-2.6.32-642.el6.x86_64.img 文件恢复实验,实验环境centos6.8系统 1.安全起见,请先安排做快照及备份 把initramfs-2.6.32-642.el6.x86_64.img 文件复制一份/root目录下。 [root@centos6: boot]# cp -a initramfs-2.6.…

    2017-05-15
  • CentOS系统启动流程

    概述:系统启动流程是Linux一个重要的内容,深入了解启动流程会对我们学习Linux起到一个顺水推舟的作用。因为CentOS 7改动较大,所以下面的内容只是针对CentOS 5和6来说的。下面进入正题。 启动流程:  第一步:POST加电自检    此过程的就是为了检测一下外界的硬件设备是否能够正常运行,如CPU,内存设备,硬盘…

    Linux干货 2016-09-13
  • 简单路由实验

    今天学习了路由相关的基础知识,为了加深印象,做了如下的一个实验。根据下面的网络拓扑图分别配置两台PC和路由,以实现PC1和PC2能够互相ping通。实验环境为VM虚拟机 在实验开始前,我们需要在路由添加两块网卡,PC机添加一块网卡,此实验网卡的链接方式是桥接,一共需要4台虚拟机,两台做PC机,两台做路由器 1、R2路由器的配置 [root@linuxpao&…

    Linux干货 2016-09-05

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-02 19:54

    非常的详细和认真,加油,再接再励。