Homework Week-2 Linux文件管理

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

文件管理工具:cp, mv, rm

        cp命令:copy  源文件  目标文件

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

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

                   如果DEST存在:

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

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

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

                    cp [OPTION]… -t DIRECTORY SOURCE…

                   如果DEST不存在:错误;

                   如果DEST存在:

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

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

               常用选项:

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

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

                   -r, -R:递归复制目录;

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

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

                   –preserv=

                       mode:权限

                       ownership:属主和属组

                       timestamps: 时间戳

                       context:安全标签

                       xattr:扩展属性

                       links:符号链接

                       all:上述所有属性

mv命令:move

        mv [OPTION]… [-T] SOURCE DEST

        mv [OPTION]… SOURCE… DIRECTORY

        mv [OPTION]… -t DIRECTORY SOURCE..           

        常用选项:

                   -i:交互式;

                   -f:force

      rm命令:remove

            rm [OPTION]… FILE…

            常用选项:

                -i:interactive

                -f:force

                -r: recursive

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

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

bash的基础特性(命令的执行状态结果):

        命令执行的状态结果:

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

                成功:0

                失败:1-255

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

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

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

bash的基础特性(命令行展开)

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

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

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

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

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

#cd /tmp

#touch {a_,b_}{c,d}

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

#cd /tmp

#mkdir mylinux/

#cd mylinux/

# mkdir -p {bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-s
cripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}

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

文件的元数据信息有访问时间(access time)、修改时间(modify time)、状态改动时间(change time);

查看使用stat命令:

            stat – display file or file system status

            stat FILE…

            时间戳:

                access time:2015-12-10 16:12:22.776423693 +0800

             modify time:2015-12-10 16:12:22.776423693 +0800

             change time:2015-12-10 16:12:22.776423693 +0800

修改时间戳信息使用touch命令

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

定义别名使用命令# alias NAME='COMMAND'

例:#alias cl=clear

命令中可以通过管道引用另一个命令的执行结果;管道是连接程序,实现将前一个命令的输出直接定向后一个程序当作输入数据流

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

# ls -d /var/l?*[[:lower:]]

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

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

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

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

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

# touch $(date +tfile-%Y-%m-%d-%H-%M-%S)

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

# mkdir   /tmp/mytest1/

# cp  -r   /etc/p*[^0-9]    /tmp/mytest1/

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

# mkdir     /tmp/mytest2/

cp -r     /etc/*.d      /tmp/mytest2/

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

# mkdir /tmp/mytest3/

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

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

(0)
N22_ElephantN22_Elephant
上一篇 2016-08-22 09:29
下一篇 2016-08-22 09:29

相关推荐

  • 一个PHP程序员学习运维的转型

         我是一位PHP开发工程师,平时负责前端、后端以及服务器端的工作,但是称不上是个牛逼的程序员。网上热烈讨论一则传闻,“全栈工程师”(Full Stack Engineer),要求应征者对开发堆栈的每个方面都有所掌握。那究竟何为 “全栈工程师”呢?从字面上来理解,全栈工程师必须熟悉开发堆栈的每一个层次,或者至少熟悉绝大多数…

    Linux干货 2017-04-02
  • Linux pxe服务

                     Linux pxe服务 pex工作过程:   客户机从自己的pxe网卡启动,向本网络中的DHCP服务器请求IP地址及子网掩码,此时DHCP服务器返回分给客户机的IP地址和子网掩码,并告知客户机bootstrap文件的…

    系统运维 2016-11-18
  • 笔记整理:权限管理3-ACL

    ACL 访问控制列表,并不是所有的Linux文件系统,都支持ACL。FAT文件系统也不支持ACL   ACL文件系统中,不支持chmod等命令。同时不能更改文件权限。不存在文件权限。 问题提出 只让wang用户,对该文件不能够访问,同时不影响其他任何用户对该文件的操作。   ACL特点 针对单一用户或群组,单一文件或目录,进行rwx权限设…

    Linux干货 2016-08-05
  • 一些不起眼但非常有用的 Vim 命令

    原文出处: xmodulo   译文出处:linux.cn – wangjiezhe   如果我的关于这个话题的最新帖子没有提醒到你的话,那我明确地说,我是一个 Vim 的粉丝。所以在你们中的某些人向我扔石头之前,我先向你们展示一系列“鲜为人知的 Vim 命令”。我的意思是,一些你可能以…

    Linux干货 2015-03-09
  • Linux网络简单设置

     修改IP地址:临时修改IP地址(centenos 7以前版本)ifconfig eth0 x.x.x.x netmask x.x.x.x                   修改…

    Linux干货 2017-08-19
  • 【linux】正则表达式之grep、egrep、元字符

    正则表达式:     又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。是一类字符所书写的模式,其中许多字符(元字符)不表示其字面意义,而是表达控制或通配等功能。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符…

    Linux干货 2015-04-01

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-22 14:31

    写的很好,排版还可以在漂亮一点,加油,3大题2小题跟老师要求的不一样