码迷,mamicode.com
首页 > 编程语言 > 详细

马哥2016全新Linux+Python高端运维班第二周作业

时间:2016-08-22 16:27:32      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:linux   文件管理   

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

1)cp:

复制

用法:

      cp [OPTION]... [-T] SOURCE DEST

      cp [OPTION]... SOURCE... DIRECTORY

      cp [OPTION]... -t DIRECTORY SOURCE...

选项:

    -i:交互式

    -r:递归复制

    -a:归档,相当于-dR--preserv-links

    -p:相当于--preserv=mode,ownership,timestamp

    -v:--verbose,显示详细信息

eg.

1.-a选项,归档复制

[yannic@localhost etc]$ ls -l  /etc/system-release
lrwxrwxrwx. 1 root root 14 Aug 14 03:24 /etc/system-release ->centos-release
[yannic@localhost etc]$ cp /etc/system-release /tmp
[yannic@localhost etc]$ ls -l /tmp/system-release 
-rw-r--r--. 1 yannic yannic 27 Aug 19 05:50 /tmp/system-release  //复制原文件,而不是软连接
[yannic@localhost etc]$ rm -f /tmp/system-release
[yannic@localhost etc]$ ls -l/tmp/system-release
lrwxrwxrwx. 1 yannic yannic 14 Aug 14 03:24/tmp/system-release -> centos-release

 

2)rm

删除文件或目录

用法:rm [OPTION]... FILE...

选项:

 -r 递归删除,包括目录以及目录下的文件

 -f 强制执行

 -i:交互式选项

 

3)mv

移动文件

用法:

      mv [OPTION]... [-T] SOURCE DEST

      mv [OPTION]... SOURCE... DIRECTORY

      mv [OPTION]... -t DIRECTORY SOURCE...

选项:

    -i:交互式选项

     -f:--force,强制执行

 

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

    (1)命令执行状态返回值:

        0- 成功

        1~255:失败

  (2)命令行展开:

     ~:展开为用户的主目录

     ~USERNAME:展开为指定用户的主目录

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

     eg.

[yannic@localhost tmp]$ mkdir -p/tmp/work2/{x,y}/a
[yannic@localhost tmp]$ tree /tmp/work2
/tmp/work2
├── x
│   └── a
└── y
└── a

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

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

     mkdir/tmp/{a,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

[yannic@localhost ~]$ mkdir -p /tmp/mylinux/{bin,boot/grub,etc/rc.d/init.d,etc/sysconfig/networkscrips,lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var,lock,log,run}


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

    元数据指用来描述一个文件的特征的系统数据,诸如文件权限(属主权限,属组权限、其他用户权限)、文件拥有者以及文件数据块的分布信息(inode...)等等。


通过ls命令查看

[yannic@localhost profile.d]$ ll
total 56
-rw-r--r--. 1 root root 1127 Oct 17  2013 colorls.csh

 

还可以通过stat命令查看更多详细信息:文件大小size,文件占用的块数,blocks,文件权限,GID和 

UID。文件时间戳信息,最近一次访问时间Access,最后一次修改时间Modify,最后一次改变时间Change。

[yannic@localhost profile.d]$ stat colorls.csh
  File:`colorls.csh‘
  Size:1127        Blocks: 8          IO Block:4096   regular file
Device: 802h/2050d  Inode:6029550     Links: 1
Access: (0644/-rw-r--r--)  Uid: (   0/    root)   Gid: (   0/    root)
Access: 2016-08-19 05:48:14.920032604 -0700
Modify: 2013-10-17 05:51:45.000000000 -0700
Change: 2016-08-14 03:22:38.972999939 -0700


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

alias:定义别名

alias NAME=‘VALUE‘,只对当前会话有效

永久生效:

仅对当前用户:~/.bashrc

    对所有用户有效:/etc/bashrc

可以通过管道实现在命令中引用另一个命令的执行结果:

eg.

[yannic@localhost ~]$ ps aux |grep ls
root      1422  0.2 0.4 189328  4404 ?        Sl  Aug18   8:07 /usr/sbin/vmtoolsd
yannic    2462  0.0 0.4 450424  4720 ?        Ssl Aug18   0:02 /usr/bin/pulseaudio--start --log-target=syslog
yannic    2471  0.0  0.2  95228 2620 ?        S    Aug18  0:00 /usr/libexec/pulse/gconf-helper
yannic    2496  0.2 2.9 359016 29696 ?        S    Aug18  9:09 /usr/lib/vmware-tools/sbin64/vmtoolsd -n vmusr --blockFd 3
root     37630  0.0 0.1  22440  1076 ?       S    Aug20   0:00/usr/libexec/hald-addon-rfkill-killswitch
yannic   41418 1.0  0.0 103256   840 pts/1   S+   06:36   0:00 grep ls


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

ls -ld /var/l*[0-9]*[[:lower:]]


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

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


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

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


9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:

    tfile-2016-08-06-09-32-22。

touch /tmp/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/test2


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

cp /etc/[lmn]*.conf /tmp/test3


马哥2016全新Linux+Python高端运维班第二周作业

标签:linux   文件管理   

原文地址:http://yannic.blog.51cto.com/5504978/1841028

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!