N26 第二周作业

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

文件管理类命令有:mkdir rmdir cp mv rm
mkdir:创建文件夹
命令格式:mkdir [OPTION]… DIRECTORY…

# 创建日期文件夹         
mkdir /tmp/`date +%Y-%m-%d`

rmdir:删除空文件夹
命令格式:rmdir [OPTION]… DIRECTORY…

# 删除上面创建的日期文件夹         
rmdir /tmp/2017-01-17

cp:拷贝文件或目录
命令格式:cp [OPTION]… [-T] SOURCE DEST
                 cp [OPTION]… SOURCE… DIRECTORY
                 cp [OPTION]… -t DIRECTORY SOURCE…

# 拷贝文件到目录        
cp /etc/passwd /tmp/test
# 拷贝并覆盖文件
cp /etc/shadow /tmp/test/passwd
# 递归拷贝文件夹
cp -r /var/log /tmp/test

rm:删除文件或目录
命令格式:rm [OPTION]… FILE…

# 删除目录下所有文件
rm /tmp/test/*
# 删除空目录
rm /tmp/test

mv:移动或重命名文件
命令格式:mv [OPTION]… [-T] SOURCE DEST
                 mv [OPTION]… SOURCE… DIRECTORY
                 mv [OPTION]… -t DIRECTORY SOURCE…

# 移动目录中所有文件到目标文件夹        
mv /tmp/test/* /tmp/test2
# 重命名文件
mv messages notes.txt

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

在命令执行后,可以立即使用命令“echo $?”打印命令执行的状态返回值,返回0表示命令执行成功,其他值则表示命令执行失败
命令行展开涉及两组符号“~”和 “{,}”
~ :展开为用户的家目录

[root@localhost mylinux]# su eric
[eric@localhost mylinux]$ cd ~
[eric@localhost ~]$ pwd
/home/eric

{,}:大括号内包含逗号分隔的路径列表,展开为多个路径

mkdir /tmp/test/{a,b}        
# 上面一条命令相当于下面两条命令
mkdir /tmp/test/a 和 mkdir /tmp/test/b

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

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

mkdir {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

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、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

文件的元数据包括:
        File:文件名,
        Size:文件大小,
        Blocks:文件块数,
        IO Block:IO块大小,
        Device:设备号,
        Links:链接次数,
        Access:访问权限,
        Uid:用户ID,
        Gid:组ID,
        Access time:最近访问时间,
        Modify time:最近修改数据时间,
        Change time:最近更改元数据时间

# 查看文件元数据
stat /etc/passwd

 更改时间戳可以使用 touch 命令

# 同时修改 Access time, Modify time, Change time
touch /tmp/mytest3.txt
# 修改 Access time
touch -a /tmp/mytest3.txt
# 修改 Modify time
touch -m /tmp/mytest3.txt

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

# 定义别名
alias cls=clear
# 取消别名定义
unalias cls

在命令中引用另一命令的执行结果可以通过两种格式
(1) COMMAND1 `COMMAND2`

cd `echo /usr/share`

(2) COMMAND1 $(COMMAND2)

mkdir $(date +%Y)

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

[root@localhost var]# mkdir 1plus2minus
[root@localhost var]# touch 1helloCentOS7.txt
[root@localhost var]# cd 1plus2minus/
[root@localhost 1plus2minus]# touch abc.txt
...
[root@localhost var]# ls -d 1*[0-9]*[[:lower:]]
1helloCentOS7.txt  1plus2minus

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

[root@localhost var]# touch 8code
[root@localhost var]# ls -d [0-9]*[^0-9]
1helloCentOS7.txt  1plus2minus  8code

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

# 在/etc目录中满足条件的文件或目录均以"."开头,由于shell选项dotglob的默认设置,[^a-z]不能匹配"."
[root@localhost etc]# ls -d /etc/[^a-z][a-z]*
ls: cannot access /etc/[^a-z][a-z]*: No such file or directory
# 开启dotglob,使通配符可以匹配“.”
[root@localhost var]# shopt -s dotglob
[root@localhost etc]# ls -d /etc/[^a-z][a-z]*
/etc/.java  /etc/.pwd.lock  /etc/.updated
# 恢复选项默认值
[root@localhost etc]# shopt -u dotglob
# 查看shell选项
[root@localhost etc]# shopt

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

[root@localhost tmp]# mkdir tfile-`date +%Y-%m-%d-%H-%M-%S`

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

[root@localhost tmp]# mkdir /tmp/mytest1
[root@localhost tmp]# cp -r /etc/p*[^0-9] /tmp/mytest1

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

[root@localhost tmp]# mkdir mytest2
[root@localhost tmp]# cp -r /etc/*.d /tmp/mytest2

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

[root@localhost ~]# mkdir /tmp/mytest3
[root@localhost ~]# cp /etc/[1mn]*.conf /tmp/mytest3

原创文章,作者:和风细雨,如若转载,请注明出处:http://www.178linux.com/66740

赞 (0)
和风细雨和风细雨
上一篇 2017-01-17 19:06
下一篇 2017-01-17 23:54

相关推荐

  • VRRP协议

    VRRP协议 Virtual Router Redundancy Protocol 虚拟路由器冗余协议。 Vrrp协议在linux上的实现(软件实现)是keepalived。 VRRP简单的讲,就是心跳信息。 主节点不断的向备用节点广播信息,信息包含自己的心跳和优先级。 不光如此,还可以在主节点上安装一个监控,来监控其他资源,如果这些资源运行正常,就可以给其…

    2016-11-02
  • linux软链接与硬链接的区别

    硬链接:相于当给文件增加了一个新名 在添加链接时会增加链接数,其inode结点数不会增加 支持绝对路径与相对路径 硬链接不能对目录来创建 不能跨分区来创建链接 硬链接链接到文件被删除时,依旧可以通过链接文件来访问被删文件的数据 软链接:可以支持对目录来创建链接 (注,当你用rm -rf 删除目录的时候,目录不会删除,但目录中的内容会被删除,并且会删除源文件)…

    Linux干货 2013-07-15
  • 内键命令和外部命令

    命令的基本格式 COMMAND  [OPTIONS…]  [ARGUMENTS…]        命令 (COMMAND)       OPTIONS(选项):用于启用或关闭命令的某个或某些功能      …

    2017-05-23
  • SHELL中的变量

    SHELL中的变量            运行SHELL脚本中的单个命令自然有用,但这有其自身的限制。通常你会需要在SHELL命令使用其他数据来处理信息。这可以通过变量来实现。变量允许你临时性地将信息存储在SHELL脚本中,以便和脚本中的其他命令一起使用。 1 环境变量…

    Linux干货 2017-04-16
  • 磁盘管理2——文件系统挂载和swap文件系统以及磁盘管理工具

    文件系统的使用: 首先要“挂载”:mount命令和umount命令 根文件系统之外的其他文件系统要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此管理操作即为“挂载”,此目录为“挂载点” 挂载点:MOUNT_POINT,用于作为另一个文件系统的访问入口     (1)事先存在   …

    Linux干货 2016-08-29
  • Linux文件类型及颜色标识整理

    Linux文件类型及颜色标识整理 Linux文件系统中有如下的文件类型: 类型1:普通文件—-à白色 类型2:目录文件—à蓝色 类型3:链接文件—à浅蓝色 类型4:字符设备文件—à黄色 类型5:块设备文件—-à黄色 类型6:管道文件—à青黄色 类型7:套接字文件—à粉红色 为…

    Linux干货 2016-10-19

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-02 20:04

    较上篇有不小的提高,加油。