; linux文件管理类命令学习总结练习 | Linux运维部落

linux文件管理类命令学习总结练习

1、常用文件管理类命令:cp, mv, rm

  cp: copy命令

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

                  DEST不存在:先创建-复制数据-EDST

                    例如: ~~]# cp /tmp/cat.out /tmp/cat1.out

                   DEST 存在:DEST非目录-覆盖DEST

                  b 例如: ~~]# cp /tmp/cat.out /tmp/cat.out

                              DEST是目录-先创建-复制数据流至DEST

                              例如: ~~]# cp /tmp/cat.out /tmp/

      多元复制 cp [OPTION]… SOURCE… DIRECTORY

               cp [OPTION]… -t DIRECTORY SOURCE…

                  DEST不存在:错误

                   DEST 存在:DEST非目录-错误

                              DEST是目录-分别复制至目标目录

                              例如: ~~]# cp /tmp/ip.txt /tmp/ipnew.txt /tmp/12

      常用选项:

                i 交互

                f 强制

                r 递归,

                d 复制链接, 

                a 全部属性归档   

  mv: move命令 移动,重名名

       mv [OPTION]… [-T] SOURCE DEST

         例如: ~~]# mv /tmp/ip.txt /tmp/ip_new.txt 

       mv [OPTION]… SOURCE… DIRECTORY

         例如: ~~]# mv /tmp/ip.txt /etc/

       mv [OPTION]… -t DIRECTORY SOURCE…

         例如: ~~]# mv /tmp/12 /tmp/man/

      常用选项:

                i 交互

                f 强制

                r 递归,

  

  rm:remove命令:删除,

       rm [OPTION]… FILE…

              常用选项:

          -i:interactive

          -f:force

          -r: recursive

          删除目录: rm -rf /PATH

          注意:慎用rm命令建议使用mv代替 临时目录回收站 危险命令:rm -rf /*  

 

2、bash的基础特性:命令的执行状态结果

    命令执行的状态结果:

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

        成功:0

        失败:1-255

        执行结果保存于bash的$变量中

    引用命令的执行结果:

      $(COMMAND)

      或`COMMAND`

     强引用:"" 

    bash的基础特性之:命令行展开

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

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

      例如:/tmp/{a,b} 相当于 /tmp/a /tmp/b

3、命令展开功能练习:

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

         ~]# mkdir -pv /tmp/{a_{c,d},b_{c,d}}   

/tmp

|– a_c

|– a_d

|– b_c

|– b_d 

   (2) 创建/tmp/mylinux目录下的对应目录

         ~]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/ini.d,sysconfig/network-script},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

/tmp/mylinux/

|– bin

|– boot

|   `– grub

|– dev

|– etc

|   |– rc.d

|   |   `– ini.d

|   `– sysconfig

|       `– network-script

|– lib

|   `– modules

|– lib64

|– proc

|– sbin

|– sys

|– tmp

|– usr

|   `– local

|       |– bin

|       `– sbin

`– var

    |– lock

    |– log

    `– run

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

       元数据包含文件的路径、大小,权限、时间戳等

         查看元数据命令  stat [OPTION]… FILE…

           例如:  ~]#stat /tmp/ip_new.txt 

     时间戳:

        access time:2015-12-10 16:12:22.776423693 +0800   存取时间(最后一次读的时间) cat more

        modify time:2015-12-10 16:12:22.776423693 +0800   文件内容修改时间 (数据)

        change time:2015-12-10 16:12:22.776423693 +0800   文件修改时间  (数据和元数据)

      touch命令:

             touch [OPTION]… FILE…

              -c:指定文件不存在时不创建

              -a:修改access time:

              -m:修改modify time;

              -t:STAMP 指定时间

                 [[CC]YY]MMDDhhmm[.ss]

              例如:

              ~]# touch -t 0911142234.50 /tmp/ip_new.txt 更新 access,modify为指定时间

              ~]# touch -a /tmp/ip_new.txt  更新access时间为当前系统当前时间

              ~]# touch -r A B  更新B文件的时间戳和A文件的相同

          注意change time  即当前修改时间

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

    alias,命令别名

    alias NAME='COMMAND'   定义一个命令别名

      例如 ~]# alias cp='cp -i'

    alias 查看bash中存在的命令别名

    命令引用

        引用命令的执行结果:

      $(COMMAND)  $(cat /tmp/ip_new.txt)

      或`COMMAND` $`cat /tmp/ip_new.txt`

     

     bash基本特性:引用 

       强引用: ''

       弱引用:""

       命令引用:“

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

    ~]# ls -d /etc/l?*[0-9]*[[:lower:]]

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

    ~]# ls -d /etc/[0-9]*[^0-9]

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

    ~]# ls -a /etc/[^a-z][a-z]*

    ~]# ls -d /etc/[^[:alpha:]][[:alpha:]]*

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

     ~]# touch /tmp/tfile-$(date +"%Y-%m-%d-%H-%M-%S")

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

     ~]# mkdir /tmp/mytest1 | cp -rf /etc/*[^0-9] /tmp/mytest1

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

     ~]# mkdir /tmp/mytest2 | cp -rf /etc/*\.d /tmp/mytest2

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

     ~]# mkdir /tmp/mytest3 && cp -rf /etc/[l-n]*\.conf /tmp/mytest3 

     ~]# mkdir /tmp/mytest3 | cp -rf /etc/[l-n]*\.conf /tmp/mytest3

     

原创文章,作者:N24-zhoub,如若转载,请注明出处:/57782

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-10 17:18

    内容基本上都完成了,结合markdown来展示的话,会更好;继续加油~

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1660809109@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班

友情链接:万达娱乐平台  万达直属  万达娱乐主管QQ  万达娱乐主管QQ  华宇招商  万达主管QQ  万达娱乐招商QQ  测试  guoqibee.com