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 15:14
下一篇 2017-01-08 17:47

相关推荐

  • UEFI原理小结

    1. UEFI 和 BIOS        UEFI 和 BIOS它们都可以认为是一种烧录了不同程序的PC固件,它们都可以用来启动系统,并且UEFI可兼容MBR,并直接支持GPT;BIOS是IBM PC兼容机中常用的一种固件; UEFI是Intel开发和发布的EFI的继任者,它由UEFI论…

    Linux干货 2016-05-01
  • 初学Linux

       已经学习了Linux一周了,从原来的设计网页、动画影视制作、3D模型到现在的黑白界面虚拟世界,从原来吃睡由我到现在重回高三生活,说实话,一开始还是不太能适应的,尤其是眼睛,酸胀痛。不过,越努力越幸运,也觉得linux其实很有意思。。以下是我第一篇微博的内容,也是我学习linux一周所总结的知识。 首先,学习一门知识就要先了解他的历史…

    Linux干货 2017-07-15
  • dns配置

    dns

    Linux干货 2018-01-22
  • 学习宣言

    别人笑我太疯癫,我笑他人看不穿。不见五陵豪杰墓,无花无酒锄作田。

    Linux干货 2016-10-24
  • bash脚本之进阶

    bash脚本 1、终端打印 1、单双引号(echo) 双引号: ①在双引号里面打不出! ②双引号,可以在文本中使用“;”,“;”在bash中被用作命令定界符。 单引号: 变量替换在单引号中无效。 2、printf:不会自动添加换行符,要手动添加 如下: 结果: 3、补充: echo 要使用转义系列需要加e,!号除外 2、变量和环境变量 脚本语言通常…

    Linux干货 2016-11-28
  • mv命令总结

    mv命令是move的缩写,可以用来移动文件或者将文件改名,是Linux系统下常用的命令,经常用来备份文件或者目录。 命令格式:mv  源文件或目录 目标文件或目录 2.命令功能:视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能…

    2017-07-24

评论列表(1条)

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

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