第二周作业

一、Linux文件管理类命令

    1、文件的复制、移动和删除

   

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
   A、cp  文件的复制
         cp命令的用法:   
            cp [选项]  源文件  目标文件
               a)、目标文件不存在,新建目标文件,并将源文件内容填充到目标文件中
               b)、目标文件存在,源文件内容将覆盖目标文件;使用-i会有交互式提醒
            cp [选项]  多个源文件   目标目录
                       此时目标必须是目录,否则就会出错
            cp -r [选项]   源目录   目标
                 a)、目标不存在,则创建目标名的目录,复制源目录下文件到目标目录下;
                 b)、目标存在,但是是文件时,报错;
                    目标存在,是目录时,复制源目录下文件到目标目录下;
             常用选项:
                     -i:交互式
                     -r, -R: 递归复制目录及内部的所有内容;
                      -a: 归档,

     B、mv文件移动

       

1
2
3
4
 mv用法:
             mv [选项]  源文件   目标文件
             mv [选项]  多个源文件    目标目录

             mv -r [选项]    源目录     目标

             同目录使用mv命令是重命名

              

      C、rm删除文件

           

1
2
3
4
5
6
rm命令用法:
              rm [选项]   文件名
                  rm常用选项:
                        -i: 交互式
                        -f: 强制删除

                        -r: 递归

              rm -rf /* :不可操作,使用rf选项时要慎重

二、练习

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

1
mkdir -p /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

1
 mkdrir -p /tmp/mylinx/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{local,log,run}}

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

     Bash 命令执行后,会对执行状态返回一个值。

     如果命令执行成功则返回0,如果执行不成功,就会返回一个1-255的数字,这个返回值保存在特殊变量$?中。

     可以使用echo $?查看返回值。

   命令行展开:

      1、~  展开为用户的家目录

          使用方法:~username

      2、使用花括号和逗号的一个列表,展开为多个路径

1
  /etc/{a,b}  表示 /etc/a   /etc/b

 mkdir -p /tmp/{a,b}{c,d}     #会新建 /tmp/a/c   /tmp/a/d   /tmp/b/c   /tmp/b/d 目录

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

   文件的元数据包含文件本身的一些属性信息,如:文件名、文件的各类权限、各类时间戳、inode号码、链接次数等。

   文件包括三个时间戳:atime,mtime,ctime,可以使用touch命令来修改时间戳,用法如下

     touch  [选项]   filename

         常用选项有:

            -a: 只更改atime

            -m:  只更改mtime

            -c: 如果文件不存,则不予创建

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

   别名:

     使用alias命令定义别名,用法: alias name='command',

     使用alias 定义的别名,只对当前shell有效,重新登录就会失效。

     如果希望永久有效,请更改下面的配置文件

            如果仅对当前用户:更改~/.bashrc

            如果对所有用户有效:更改/etc/bashrc

  使用管道把一个命令的执行结果传送给另一个命令

1
ll | sort -d' ' -k2

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

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

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

1
ls /etc/[0-9]*[[:alpha:]]

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

1
 ls /etc/[^[:alpha:]][[:alpha:]]*

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

1
touch "tfile-`date +%F`-`date +%l`-`date +%M`-`date +%S`"

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

1
 cp -r /etc/p*[^0-9] /tmp/mytest1

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

1
cp -r /etc/*.d   /tmp/mytest2

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

1
cp -r /etc/[l,m,n]*.conf /tmp/mytest3

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

(0)
oranixoranix
上一篇 2016-12-13 11:51
下一篇 2016-12-13 13:44

相关推荐

  • Python from entry to abandon

          学习Linux已经有大致两周了,依然感觉到自己仍然在运维的大门外徘徊。于是我想要找到一个在Linux之外的业余方向,可以作为枯燥基础学习的调节。没过多久我就发现了Python可以 说是钦定的选择,它作为Linux的内置语言,传言风格简洁优美,功能强大。Python老生常谈的缺点是效率不高,哎,没办…

    Linux干货 2017-04-01
  • OpenStack私有云部署

    架构 实验环境 角色 主机名 网卡 系统环境 Controller Node controller.qween.com 管理接口eth0:192.168.22.128 外部接口eth1:192.168.36.130CentOS6.8Compute Nodecompute1.qween.com管理接口eth0:192.168.22.129 隧道接口eth1:1…

    2017-12-12
  • 【原创】Tengine+LUA+Nginx-GridFS+jemalloc编译安装

    操作系统 ubuntu 14.04 LTS Nginx-GridFS为nginx直接访问mongoDB的扩展模块,目前只支持到mongodb2.6.12 mongodb安装请自己百度 #安装依赖包保平安 apt-get install root-system-bin autoconf automake gcc c++ libgeoip-devlibxml++…

    Linux干货 2016-11-30
  • 马哥教育网络班20期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who |cut -d " " -f1 |sort -u 2、取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# who|tai…

    Linux干货 2016-06-29
  • N25期–第十三周作业

    1、 建立samba共享,共享目录为/data,要求:(描述完整的过程)  1)共享名为shared,工作组为magedu;  2)添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名;  3)添加sam…

    Linux干货 2017-04-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-16 15:12

    赞,总结的也比较详细~~基础命令很重要,继续加油~