N26第二周博客作业

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

Ø  ls 查看文件与目录

ls [选项] 文件或目录

常用选项

-a:全部的文件,连同隐藏文件(以.开头)一起列出来

-d:列出目录本身,而不是列出目录里的文件

-l:列出详细信息,如文件的属性与权限等数据

-h:将文件容量以易读的方式显示(例如:GB,KB等)

-t:以时间排序

-S:以文件容量的大小排序

[root@centos6 ~]# ls -lh /tmp

total 12K

drwxr-xr-x.  4 root root 4.0K Jan  4 12:31 a

drwxr-xr-x.  4 root root 4.0K Jan  4 12:31 b

drwxr-xr-x. 14 root root 4.0K Jan  4 12:47 mylinux

Ø  cp 复制文件或目录

cp [选项] 源文件 目标文件

cp [选项] 源文件1 源文件2 源文件3… 目录

常用选项

-i:若目标存在,复制时提示是否覆盖

-r:递归持续复制,用于目录的复制

-p: 连同文件的属性一起复制,而非使用默认属性

-d: 若源文件为连接文件,则复制连接文件而非文件本身

-a:相当于-pdr

[root@centos6 ~]# cp /etc/issue ./

[root@centos6 ~]# ls -l /etc/issue

-rw-r–r–. 1 root root 47 Nov 27  2013 /etc/issue

[root@centos6 ~]# ls -l ./issue

-rw-r–r–. 1 root root 47 Jan  4 16:35 ./issue

Ø  rm 删除文件或目录

rm [-fir] 文件或目录

常用选项:

-f:强制删除,忽略不存在的文件,不会出现警告信息

-i:互动模式,在删除前会询问用户是否操作

-r:d递归删除,常用于删除目录

rm -fr /tmp/*

Ø  mv 移动文件或目录

mv [-fiu] 源文件 目标文件

mv [选项] 源文件1 源文件2 源文件3… 目录

常用选项

-f:强制删除,如果文件已经存在,不会询问而直接覆盖

-i:若目标存在,复制时提示是否覆盖

-u:若目标文件已经存在,并且源比较新,才会更新

[root@centos6 ~]# mv /tmp/a ./

 [root@centos6 ~]# ls -ld a

drwxr-xr-x. 4 root root 4096 Jan  4 12:31 a

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

Ø  bash有一特性,可以将执行的命令状态赋值返回,0代表命令执行成功,非0表示命令执行失败,并可以通过$?查看刚刚执行的命令状态.

[root@centos6 ~]# echo $?

0

[root@centos6 ~]# ls -l /etc/onfile

ls: cannot access /etc/onfile: No such file or directory

[root@centos6 ~]# echo $?

2

Ø  bash另一个特性,可以通过{}将命令展开.

[root@centos6 ~]# mkdir -p /tmp/{a,b}/{c,d}

[root@centos6 ~]# ls /tmp

a  b

[root@centos6 ~]# ls /tmp/a

c  d

[root@centos6 ~]# ls /tmp/b

c  d


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

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

[root@centos6 ~]# mkdir -p /tmp/{a,b}/{c,d}

[root@centos6 ~]# ls /tmp

a  b

[root@centos6 ~]# ls /tmp/a

c  d

[root@centos6 ~]# ls /tmp/b

c  d

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


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

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}}


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

Ø  元数据至少包含以下内容:

l  文件的访问模式(read,write,excute)

l  文件的所有者(ower/group)

l  文件的大小

l  文件时间(atime/mtime/ctime)

l  文件特性标志(flag),如SUID

l  该文件真正内容的指向(pointer)

Ø  查看命令 stat

[root@centos6 ~]# stat a

  File: `a'

  Size: 4               Blocks: 8          IO Block: 4096   regular file

Device: 803h/2051d      Inode: 658939      Links: 1

Access: (0644/-rw-r–r–)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2017-01-08 14:33:02.554017143 +0800

Modify: 2017-01-08 14:33:39.010017036 +0800

Change: 2017-01-08 14:33:39.010017036 +0800

Ø  touch修改文件的时间戳信息

用法: touch [OPTION]… FILE…

常用选项

         -c:touch只修改时间戳,不创建空文件

         -a:修改access time

         -m:修改modify time

         -t:指定时间,格式为[[CC]YY]MMDDhhmm[.ss]

[root@centos6 ~]# stat test.txt

  File: `test.txt'

  Size: 221353          Blocks: 440        IO Block: 4096   regular file

Device: 803h/2051d      Inode: 658909      Links: 1

Access: (0644/-rw-r–r–)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2017-01-04 16:29:54.780000187 +0800

Modify: 2017-01-04 16:29:38.764000447 +0800

Change: 2017-01-04 16:29:38.764000447 +0800

 

[root@centos6 ~]# touch -mt 200001010000 test.txt

 

[root@centos6 ~]# stat test.txt

  File: `test.txt'

  Size: 221353          Blocks: 440        IO Block: 4096   regular file

Device: 803h/2051d      Inode: 658909      Links: 1

Access: (0644/-rw-r–r–)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2017-01-04 16:29:54.780000187 +0800

Modify: 2000-01-01 00:00:00.000000000 +0800

Change: 2017-01-08 14:53:10.674013852 +0800

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

Ø  alias定义命令别名

alias NAME=’COMMAND’

此命令只对当前shell有效,可通过修改配置文件,并重读此配置文件使其当前shell以及子shell也有效.

source ~.bashrc

Ø  命令引用有两种方式

l  $()

l 

[root@centos6 ~]#echo $(data)

Sun Jan 8 15:01:31 CST 2017


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

ls -d /var/1[0-9]*[[:lower:]]


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

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


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

ls -d /etc/[^a-z][a-z]*

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

touch /etc/tfile-$(date +%F-%H-%M-%S)

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

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

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

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

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

cp -r /etc/[1mn]*.conf  tmp/mytest3

 

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

(0)
天空天空
上一篇 2017-01-08
下一篇 2017-01-08

相关推荐

  • bash数据类型探秘

    数组 变量:存储单个元素的内存空间数组:存储多个元素的连续的内存空间,相当于多个变量的在调用变量时最好加双引号,对于字符串中含有空格等字符的能更好的调用集合。数组名和索引索引:编号从0开始,属于数值索引( 偏移量从默认0开始 )注意:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引, bash4.0版本之后开始支持。bash的数组支持稀疏格式(索引…

    Linux干货 2016-08-24
  • N26-第一周作业

    1.    计算机由以下几个部分组成:         a. CPU:中央处理器;主要由运算器和控制器组成            …

    Linux干货 2017-01-07
  • SElinux

    selinux  配置文件 修改   就要重启 targeted:用来保护常见的网路服务,仅有限进程受到selinux控制,只监控容易被入侵的进程。 targeted  慢慢完善的法律 系统默认使用   targeted     CENTOS6 CENTOS7 ZAI &nbsp…

    Linux干货 2016-09-14
  • sed

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

    Linux干货 2016-03-22
  • linux 删除内核文件,未能启动,修复方法 CDROM与网络法

    当缺少 /boot 内核文件 vmlinuz-2…. initramfs-2… 此时只能借助 光盘 CDROM 来引导生成    进入  RESCUE 模式 1    chroot       &…

    Linux干货 2016-09-13
  • 关于touch/>/>>创建同名文件的总结

    一、简介 1、touch     即创建文件或修改文件时间     语法:touch [options] file-list 2、>     创建文件,可直接把内容生成到指定文件,会覆盖源文件中的内容;也可以直接生成一个空白文件。     语法:> file…

    2017-02-18

评论列表(1条)

  • 马哥教育
    马哥教育 2017-02-27 16:51

    内容很详细,写的也很条理,非常棒,再接再励。