22期第二周课堂练习

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

    (1).cp文件复制命令

    单源复制:cp [OPTION]... [-T] SOURCE DEST
    多源复制:cp [OPTION]... SOURCE... DIRECTORY
              cp [OPTION]... -t DIRECTORY SOURCE...
              常用选项:
                   -i:交互式复制,即覆盖之前提醒用户确认;
                   -f:强制覆盖目标文件;
                   -r, -R:递归复制目录;
                   -d:复制符号链接文件本身,而非其指向的源文件;
                   -a:-dR --preserve=all, archive,用于实现归档;
                   --preserv=
                       mode:权限
                       ownership:属主和属组
                       timestamps: 时间戳
                       context:安全标签
                       xattr:扩展属性
                       links:符号链接
                       all:上述所有属性
示例:将test1底下的文件复制到test2,目录下
[root@localhost tmp]# cp test1/* test2
[root@localhost tmp]# ls -ll test2
total 0
-rw-r--r--. 1 root root 0 Aug 19 10:44 a
-rw-r--r--. 1 root root 0 Aug 19 10:44 b
-rw-r--r--. 1 root root 0 Aug 19 10:44 c

       

  (2).mv文件移动命令

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE..
   常用选项:
                   -i:交互式;
                   -f:force
                   
示例:将test1目录及目录下文件移到到test2目录下
[root@localhost tmp]# mv test1 test2
[root@localhost tmp]# cd test2
[root@localhost test2]# ls
test1

  (3).rm删除命令 

rm [OPTION]... FILE...
   常用选项:
                -i:interactive 交互
                -f:force 强制
                -r: recursive 递归
示例
                删除目录:rm -rf /PATH/TO/DIR
                危险操作:rm -rf /* 
[root@localhost tmp]# rm -rf /test2

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

  

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

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

                成功:0

                失败:1-255

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

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

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

示例
 [root@localhost tmp]# ls  -l /etc/passwd
-rw-r--r--. 1 root root 1792 Aug  9 16:54 /etc/passwd
[root@localhost tmp]# echo $?
0
[root@localhost tmp]# ld  -l /etc/passwd
ld: cannot find -l/etc/passwd
[root@localhost tmp]# echo $?
1

   (2)命令行展开

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

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

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

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

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

[root@localhost test]# mkdir {a,b}_{c,d}
[root@localhost test]# ls
a_c  a_d  b_c  b_d
[root@localhost test]#

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

  blob.png

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

24 directories, 0 files

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

    

    文件元数据包括:文件名,大小,块,IO块,设备,Inode,硬链接,软连接,权限,Uid,Gid,环境,时间戳

 查看文件的元数据信息:

[root@localhost test]# ls -l  
total 16
drwxr-xr-x. 2 root root 4096 Aug 19 11:05 a_c
  stat命令:
            stat - display file or file system status
            stat FILE...
   [root@localhost test]# stat a_c
  File: `a_c'
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
  Device: fd00h/64768d	Inode: 924347      Links: 2
  Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
  Access: 2016-08-19 11:05:45.752278216 +0800
  Modify: 2016-08-19 11:05:45.752278216 +0800
  Change: 2016-08-19 11:05:45.752278216 +0800

   修改文件的时间戳

touch命令:
            touch - change file timestamps
            touch [OPTION]... FILE...
                -c: 指定的文件路径不存在时不予创建;
                -a: 仅修改access time;
                -m:仅修改modify time;
                -t STAMP
                   [[CC]YY]MMDDhhmm[.ss]

示例

[root@localhost test]# touch -at 0812171200.21 aa
[root@localhost test]# stat aa
  File: `aa'
  Size: 0         Blocks: 0          IO Block: 4096   regular empty file
 Device: fd00h/64768dInode: 924329      Links: 1
 Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
 Access: 2008-12-17 12:00:21.000000000 +0800
 Modify: 2016-08-19 15:24:27.822367731 +0800
 Change: 2016-08-19 15:25:26.270379965 +0800

    

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

命令别名:
                获取所有可用别名的定义:
                    ~]# alias
                定义别名:
                    ~]# alias NAME='COMMAND'
                    注意:仅对当前shell进程有效
                撤销别名:
                    ~]# unalias NAME
永久生效:
           用户个人:仅对当前用户有效;
                    ~/.bash_profile
           全局:/etc/bashrc

             

命令引用:``
root@localhost test]# echo `date`
Fri Aug 19 15:30:05 CST 2016

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

[root@localhost var]# ls -a /var |grep  "^l[[:digit:]]\+[[:lower:]]$"

   

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

 [root@localhost etc]# ls -a /etc |grep  "^[0-9].*[^0-9]$"

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

[root@localhost etc]# ls /etc |grep "^[^[:alpha:]][[:alpha:]].*"

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

root@localhost etc]# touch /tmp/tfile-`date +%F-%H-%M-%S`
[root@localhost etc]# ls /tmp/
tfile-2016-08-19-16-11-01

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

[root@localhost /]# cp -r  /etc/p*[^0-9] /tmp/mytest

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

 [root@localhost test2]# cp -r /etc/*.d /tmp/test2

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

[root@localhost test2]# cp -r /etc/[1,m,n]*.conf  /tmp/mytest3

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

(0)
a295053193a295053193
上一篇 2016-08-22
下一篇 2016-08-22

相关推荐

  • 磁盘阵列(RAID)简介

    资料 RAID(Redundant Arrays of Inexpensive Disks 廉价磁盘冗余阵列)即磁盘阵列,磁盘阵列是由多个价格比较便宜的磁盘组合成的一个容量巨大的磁盘组,其原理是利用数组方式来制作磁盘组,配合数据分散排列的设计,配合数据分散排列的设计,提升数据的安全性。它把数据分别存放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能,因…

    Linux干货 2017-04-17
  • Linux基础知识之文本处理三剑客sed

    处理文本的工具sed     1.sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”。接着用sed命令处理缓冲区中的内容,完成处理后,把缓冲区中的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。sed主要用来自动编…

    Linux干货 2016-08-11
  • 关于大型网站技术演进的思考(十)–网站静态化处理—动静整合方案(2)

    原文出处: 夏天的森林    上篇文章我简要的介绍了下网站静态化的演进过程,有朋友可能认为这些知识有点过于稀松平常了,而且网站静态化的技术基点也不是那么高深和难以理解,因此它和时下日新月异的web前端技术相比,就显得不伦不类了。其实当我打算写本系列的之前我个人觉得web前端有一个点是很多人都知道重要,但是有常常低估它作用的,那就…

    2015-03-11
  • 26期全程班-第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。     # who | cut -d” ” -f 1 | sort -u   2、取出最后登录到当前系统的用户的相关信息。     # id `last …

    Linux干货 2017-02-18
  • linux中如何使用帮助

     在linux学习过程中,会遇到许多困难,尤其是一些命令掌握不牢固,不知道具体用法;或者是想要实现一些功能而不知道使用何种命令。这时求人不如求己,上网求助不如自己学会使用帮助,下面介绍几种linux帮助的用法。 1.what is +命令    执行这条命令可以显示命令的简短描述,让大家了解命令的基本功能。同时可以看到命令相关章…

    2017-07-23
  • 第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@unclez ~]#  grep -E "^[[:space:]]+.*" /boot/grub/grub.cong 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟…

    Linux干货 2016-12-31

评论列表(1条)

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

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