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

相关推荐

  • 第八周-Shell脚本编程

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示; 不在线的主使用红色显示; #!/bin/bash for i in {1..254}; do { ip=172.16.250.$i if ping -c 1 -w 1 $ip &> /dev/null …

    Linux干货 2017-08-23
  • 防护墙服务

    iptables的基本认识        Netfilter组件: 内核空间,集成在linux内核中 扩展各种网络服务的结构化底层框架 内核中选取五个位置放了五个Hook(勾子)function(INPUT、OUTPUT、FORWARD、PREROUTING、POST ROUTING),而这五个hoot functio…

    2017-08-21
  • 文件管理命令及通配符练习

    1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例 按增删改查的思路来 增: touch filename:这个命令本身不是用来新建文件的,它是用来修改文件的时间属性,不过默认情况时当filename不存在时,它会默认建立一个空文件 mkdir: 常用参数 -p:相当于递归创建目录 -v:显示出创建过程中的信息 cp : 常用参数 -r:…

    Linux干货 2016-11-06
  • Linux磁盘管理(一)之分区、格式化、挂载使用

    磁盘管理(一)   本章节内容: 磁盘结构 分区类型   管理分区   管理文件系统   挂载设备   一、磁盘结构: 1、设备号码:  主设备号:major number, 标识设备类型 次设备号:minor number, 标识同一类型下的不同设备  &n…

    Linux干货 2016-08-26
  • Linux基础概念和基础命令

    计算机基础:     一、计算机系统组成               二、冯诺依曼体系              三、服务器存储类…

    Linux干货 2016-07-22
  • 初识Linux-即使是997也不能停止学习

    1.计算机的组成及其功能:    从1946年第一台通用计算机ENIAC诞生至今,几乎所有的计算机系统都是建立在冯诺依曼体系结构上的。那么何为冯诺依曼体系结构? 冯诺依曼体系结构:        控制器:是整个计算机的中枢,负责计算机的整体调度工作,将指令从存储器中取出,并对指令进行解释执行。 &n…

    Linux干货 2016-10-29

评论列表(1条)

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

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