马哥教育第21班网络版第二周作业

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

常用文件管理类命令有cpmvrm

# cp命令:文件复制命令

    cp [OPTION]… [-T] SOURCE DEST 单文件复制

    cp [OPTION]… SOURCE… DIRECTORY 多源文件复制

    cp [OPTION]… -t DIRECTORY SOURCE… 多源文件复制的另一种方式

常用选项:

    -i:交互之前提醒用户确认

    -f:强行覆盖

    -r:递归复制目录;即复制文件及目录

    -d:复制链接文件本身,而非复制其链接的源文件

    -a:相当于 –drarchive用于实现归档

    –preserv=

             Mode:权限

             Ownetship:属主和属组

             Timestamps:时间戳

             Xattr:扩展属性

             Links:符号链接

             All:上述所有属性

 

单文件复制演示:

[root@localhost ~]# cp /var/log/boot.log /tmp/chenggb/
[root@localhost ~]# ls /tmp/chenggb/
boot.log

多源复制演示:

[root@localhost ~]# cp /var/log/{btmp,dmesg} /tmp/chenggb
[root@localhost ~]# ll /tmp/chenggb
总用量 112
-rw-r--r--. 1 root root 12838 7月  18 15:41 boot.log
-rw-------. 1 root root     0 7月  18 15:44 btmp
-rw-r--r--. 1 root root 94994 7月  18 15:44 dmesg

多源复制演示2:

[root@localhost ~]# cp -ir /var/log /tmp/log
[root@localhost ~]# ll /tmp/log/
总用量 2128
drwxr-xr-x. 2 root root    4096 7月  18 15:46 anaconda
drwxr-x---. 2 root root      22 7月  18 15:46 audit
-rw-r--r--. 1 root root   12838 7月  18 15:46 boot.log
-rw-------. 1 root root       0 7月  18 15:46 btmp
-rw-------. 1 root root    1536 7月  18 15:46 btmp-20160718
drwxr-xr-x. 2 root root       6 7月  18 15:46 chrony
-rw-------. 1 root root    6097 7月  18 15:46 cron
-rw-------. 1 root root   14798 7月  18 15:46 cron-20150707
-rw-------. 1 root root   98902 7月  18 15:46 cron-20150712
-rw-------. 1 root root  139236 7月  18 15:46 cron-20160718

# mv命令:文件移动或文件重命名命令

    如果目标文件在同一目录则重命名,反之则移动文件。

    mv [OPTION]… [-T] SOURCE DEST

    mv [OPTION]… SOURCE… DIRECTORY

    mv [OPTION]… -t DIRECTORY SOURCE…

#rm命令:文件删除命令

    rm [OPTION] [file…]

常用选项: 

    -r:递归删除

    -f:强制删除

删除演示

[root@localhost ~]# rm -rf /tmp/log/

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

  • bash特性之命令行执行状态返回值:

    命令执行结果无非有两种:一种是成功,一种是失败,在bash中命令执行成功则使用0表示,执行失败则使用1-255表示

 ~]#echo $? 查看命令执行状态(注:仅能显示最近一次命令执行结果)

    引用命令的执行结果:

        $(COMMAND)

        或`COMMAND`

    例如:mkdir $(date +%T)  引用当前时间来创建文件名

    示例

[root@localhost ~]# mkdir /tmp/z
[root@localhost ~]# echo $?
0
[root@localhost ~]#
0:表示命令执行成功
  • bash特性之命令行展开

    ~:自动展开为用户家目录

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

    示例:

[root@localhost ~]# mkdir /tmp/{a,b}  相当于 mkdir /tmp/a  和 mkdir /tmp/b

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

(1)创建/tmp目录下的:a_c,a_d,b_c,b_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
root@localhost tmp]# mkdir {a,b}_{c,d}
[root@localhost tmp]# ls -l
总用量 76
drwxr-xr-x. 2 root root     6 7月  16 22:18 a_c
drwxr-xr-x. 2 root root     6 7月  16 22:18 a_d
drwxr-xr-x. 2 root root     6 7月  16 22:18 b_c
drwxr-xr-x. 2 root root     6 7月  16 22:18 b_d
[root@localhost tmp]# mkdir -p 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}}
[root@localhost tmp]# tree mylinux/
mylinux/
├── bin
├── boot
│   └── grub
├── dev
├── etcrc.d
│   └── init.d
├── etcsysconfig
│   └── network-scripts
├── lib
│   └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│   ├── localbin
│   └── localsbin
└── var
    ├── lock
    ├── log
    └── run

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

元数据包含信息

access time:访问时间,简写为atime,读取文件内容
modify time: 修改时间, mtime,改变文件内容(数据)
change time: 改变时间, ctime,元数据发生改变

查看方式:

# stat [OPTION]... FILE...

修改文件的时间戳信息:

touch命令:
  # touch [OPTION]... FILE...
        修改atime和mtime时间戳
            -a:只改atime
            -m:只改mtime
            -t:YYYYMMDDhhmm[.ss] :修改为指定的时间
            -c:如果文件不存在,则不予创建

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

(1)alias命令用于定义命令别名

~]# alias
# alias NAME=’COMMAND’定义别名
# unalias NAME 撤销别名

注意:仅在当前shell进程有效!)即:有时间限定、有位置限制

永久有效设置方法:写入文件内。

文件类型一:仅对当前用户有效~/.bashrc

文件类型二:对所有用户有效:/etc/bashrc

需要重新读取配置文件生效:source /.bashrc或者./.bashrc

(2)命令引用方法

$(COMMAND)

或者‘COMMAND’

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

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

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

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

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

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

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

[root@MyServer ~]#  touch /tmp/tfile-$(date +%F-%H-%M-%S)
[root@MyServer ~]# ll
total 8
-rw-r--r-- 1 root root    0 Jul 17 11:09 3
-rw-r--r-- 1 root root   27 Jul 12 20:43 aa.txt
-rw-r--r-- 1 root root    0 Jul 17 21:13 a_c
-rw-r--r-- 1 root root    0 Jul 17 21:13 a_d
-rw-r--r-- 1 root root    0 Jul 17 21:13 b_c
-rw-r--r-- 1 root root    0 Jul 17 21:13 b_d
drwxr-xr-x 2 root root 4096 Jul 16 21:34 shell
-rw-r--r-- 1 root root    0 Jul 17 21:20 tfile-2016-07-17-21-20-46

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

#mkdir /tmp/mytest1
#cp -rf /etc/p*[^0-9] /tmp/mytest1

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

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

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

#mkdir /tmp/mytest3
#cp /etc/[l,m,n]*.conf /tmp/mytest3

原创文章,作者:N21-chenggb,如若转载,请注明出处:http://www.178linux.com/24756

(0)
N21-chenggbN21-chenggb
上一篇 2016-07-22
下一篇 2016-07-22

相关推荐

  • 学习笔记(11)

    学习笔记(11)

    Linux笔记 2018-04-30
  • LVS实现

    一 LVS-NAT实验前的准备 操作系统:CentOS 6.7 64位 配置防火墙,iptables –F 清理防火墙规则或者关闭iptables 关闭SELINUX, setenforce 0  #立即生效(实际是宽容模式) Director ip:172.16.2.1  VIP:192.168.1.8 RS1 ip:172.16.2.…

    Linux干货 2016-12-29
  • 进程和计划任务

    进程概念: 进程与程序的区别:进程是一个动态的概念,具有生命期,而程序是静态的表现为一个文件,一个程序可对应多个进程 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合 进程ID(Process ID,PID)号码被用来标记各个进程 UID、GID、和SELinux语…

    2018-05-10
  • LINUX系统文件类型分类

    使用LINUX过程中,时常会对文件进行操作。但是linux中文件究竟有哪些分类呢?今天让我们大家来总结一下吧! 概述:         linux文件可以分为五种类型,分别为:普通文件、目录、字符设备或块设备、套接口文件、符号链接文件。下面详细介绍这几种文件。 1 普通文件[root@lo…

    Linux干货 2017-07-22
  • sed和awk的用例及pam安全措施-第十五周

    总结sed和awk的详细用法; sed用法 sed(Stream EDitor)是一款流编辑器,用来对文本进行过滤与替换操作。其原理是:通过文件或管道读取文件内容,但是sed默认并不直接修改源文件,而是一次仅读取文件的一行至模式空间(pattern space)根据sed指令进行编辑并输出结果后清除模式空间,即所有的操作都是在模式空间中进行的。 语法格式 s…

    2017-06-05
  • nmap ncat tcpdump浅析

    nmap 的使用 nmap — 网络探测工具和安全/端口扫描器 Usage:nmap [ <扫描类型> …] [ <选项> ] { <扫描目标说明> } 扫描目标说明 -iL inputfilename (从列表中输入) 从 inputfilename中读取目标说明 [root@localhost&…

    Linux干货 2017-03-15

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-22 10:55

    写的很好,排版还可以在漂亮一点,加油