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
下一篇 2016-08-22

相关推荐

  • hello 北京&Linux启程

    北京初感&Linux启程

    Linux干货 2018-03-26
  • Linux第九周总结

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # login_user=0 nologin_user=0 for i in $(cat /etc/passwd | cut -d : -f 7);do &nbsp…

    Linux干货 2017-08-28
  • 第八周

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥(Bridge)是早期的两端口二层网络设备,用来连接不同网段。网桥的两个端口分别有一条独立的交换信道,不是共享一条背板总线,可隔离冲突域。网桥比集线器(Hub)性能更好,集线器上各端口都是共享同一条背板总线的。后来,网桥被具有更多端口、同时也可隔离冲突域的交换机(Switch…

    Linux干货 2016-09-19
  • vim编辑器进阶

    1、vim介绍    vim(Visual Interface Improved)是一款异常强大的文本编辑器,如果大家对它的认识还停留在编辑文件,再退出的阶段的话,那就太对不起vim了,反倒不如用nano来的爽快。不过学习vim刚开始的阶段必然是痛苦的,如果想要一蹴而就,那就是你想多了。所以还需大家结合实际情况,勤加练习,认真揣摩。这里是…

    Linux干货 2016-08-11
  • Linux文件类型及颜色标识整理

    Linux文件类型及颜色标识整理 Linux文件系统中有如下的文件类型: 类型1:普通文件—-à白色 类型2:目录文件—à蓝色 类型3:链接文件—à浅蓝色 类型4:字符设备文件—à黄色 类型5:块设备文件—-à黄色 类型6:管道文件—à青黄色 类型7:套接字文件—à粉红色 为…

    Linux干货 2016-10-19
  • 正则表达式

    正则表达式 热身 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。 例如 grep, expr, sed , awk. 或Vi中经常会使用到正则表达式,为了充分发挥&…

    Linux干货 2016-08-12

评论列表(1条)

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

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