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

相关推荐

  • 运筹帷幄之中,决胜与千里之外!

           运筹帷幄之中,决胜与千里之外,决定改变一生。        自从2016年年后学校要求产参加毕业实习,但对linux一窍不通的我,阴差阳错的被一家网络公司给录取了。        安排在一家企业做驻场运维工程师,刚去驻场的时候并没有给我分配相应的工作只是给了一些关于数据库,网络,和系统的一些资料,要求进行自学。我想了想,就决定选择了系统进行了解…

    2018-03-26
  • 马哥教育网络班22期+第三周(8.22-8.28)博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。   # who|awk '{print $1}'|sort| uniq 2、取出最后登录到当前系统的用户的相关信息。   # last   # last|gr…

    Linux干货 2016-08-29
  • 初识SElinux

    一、SElinux(Secure Enhanced Linux):安全增强的Linux        SElinux是一个在内核中实践的强制访问控制(MAC)安全性机制,由美国国家安全局NSA(The National Security Agency)和SCC(Secure Computing Co…

    Linux干货 2016-09-15
  • 初学Linux之 vim 文本编辑器

    vim 的模式切换;命令模式相关操作,拓展命令模式的相关操作;可视化和多窗口;定制vim的工作特性;vim帮助

    2017-12-31
  • Cent OS 6 编译方式安装LAMP

    细节要求: (1) 三者分离于三台主机; (2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress; (3) PHP使用FastCGI+xcache; (4) httpd使用非prefork的mpm模式; 一、CentOS6环境准备 1、OS(CentOS6.8)下开发环境包的安装,编译安装程序包需要使用 #yum grou…

    Linux干货 2017-02-24

评论列表(1条)

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

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