Linux学习笔记(第二章)

N21_Keen_第二周

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

cp:

cp [OPTION]... [-T] SOURCE DEST
    cp [OPTION]... SOURCE... DIRECTORY
    cp [OPTION]... -t DIRECTORY SOURCE...
   
   常用选项:
    -i:交互式    -r,-R:递归复制所以内容    -a:归档,相当于-dR(用来保持文件的一致性,比如符号链接文件)    -f:强制复制    
    cp SRC DEST:
        1、SRC为一个文件;如果DEST不存在,则新建一个文件把内容填充进去;如果DEST存在则把SRC的内容覆盖进去
        2、SRC为多个文件;DEST必须存在,否则会出错
        3、SRC是一个目录,要使用-r选项;如果DEST不存在则创建一个新的目录把里面的内容复制进去;如果DEST是一个文件则会出错,是一个目录不会出错

mv:

mv [OPTION]... [-T] SOURCE DEST
   mv [OPTION]... SOURCE... DIRECTORY
   mv [OPTION]... -t DIRECTORY SOURCE...
   
   常用选项:
        -i:交互式
        -f:强制        
    mv SRC DEST:        1、SRC为目录或者文件都可以,DEST为指定的路径        2、这命令可以为文件重命名

rm:

rm [OPTION]... FILE...
    
    常用选项:
        -i:交互式        -f:强制删除        -r:递归    
    rm file:
        可以删除一个文件,删除目录要用-r选项

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

命令执行状态返回值:    0表示命令执行成功,1-255表示命令执行失败
    
命令行展开:
    ~:表示用户的主目录;root用户的主目录为/root,普通用户的主目录为/home/USERNAME
    {}:可承载一个以逗号分隔的列表,并将其展开为多个路径,比如:/tmp/{a,b} = /tmp/a, /tmp/b

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

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

[root@keen 桌面]# mkdir /tmp/{a_c,a_d,b_c,b_d}[root@keen 桌面]# ls /tmp/a_c             orbit-root           virtual-root.7kFenj  virtual-root.QkvN85
a_d             password.out         virtual-root.86faFy  virtual-root.R58RRP
b_c             pulse-4yXSdKP5cUqy   virtual-root.b1fLRi  vmware-config0
b_d             pulse-aTb0gtGLY11g   virtual-root.faq3Zi  VMwareDnD
fstab           virtual-root.4yhoIP  virtual-root.GLztdP  vmware-root
keyring-PxjuXO  virtual-root.5LkXul  virtual-root.JdPoHy  x
orbit-gdm       virtual-root.5mNTnK  virtual-root.KKdwFd  yum.log

(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@keen 桌面]# 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}}
[root@keen 桌面]# ls /tmp/
a_c             orbit-root           virtual-root.86faFy  vmware-config0
a_d             password.out         virtual-root.b1fLRi  VMwareDnD
b_c             pulse-4yXSdKP5cUqy   virtual-root.faq3Zi  vmware-root
b_d             pulse-aTb0gtGLY11g   virtual-root.GLztdP  x
fstab           virtual-root.4yhoIP  virtual-root.JdPoHy  yum.logkeyring-PxjuXO  virtual-root.5LkXul  virtual-root.KKdwFd
mylinux         virtual-root.5mNTnK  virtual-root.QkvN85
orbit-gdm       virtual-root.7kFenj  virtual-root.R58RRP
[root@keen 桌面]# ls /tmp/mylinux/bin/   dev/   lib/   proc/  sys/   usr/   
boot/  etc/   lib64/ sbin/  tmp/   var/   
[root@keen 桌面]# ls /tmp/mylinux/var/lock/ log/  run/  
[root@keen 桌面]# ls /tmp/mylinux/var/

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

元数据指用来描述一个文件的特征的系统数据,诸如访问权限、文件拥有者以及文件数据块的分布信息等等

touch:
    touch [OPTION]... FILE...
        常用选项:
            -a:只修改访问时间            -m:只修改修改时间            -t:修改指定的时间            -c:如果文件不存在,不会创建文件            三个时间戳:
		access time:访问时间,简写为atime,读取文件内容
		modify time: 修改时间, mtime,改变文件内容(数据)
		change time: 改变时间, ctime,元数据发生改变

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

alias:    1、直接alias可以显示当前的命令别名    2、alias NAME="COMMAND" 可以定义命令的别名(如果在命令行中定义则对当前shell有限;如果要永久有效则要在配置文件中定义)    3、仅对当前用户:~/.bashrc;对所有用户有效:/etc/bashrc
    
管道:
    COMMAND1 | COMMAND2 | COMMAND3 |...
    利用管道可以将前一个命令的执行结果当作后一个命令的参数输入

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

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

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

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

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

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

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

touch tfile-`date +%F-%k-%M-%S`

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

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

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

cp -ra /etc/*.d /tmp/mytest2

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

cp -a /etc/{l,m,n}*.conf /tmp/mytest3

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

(0)
keenkeen
上一篇 2016-07-22 10:05
下一篇 2016-07-22 10:06

相关推荐

  • Linux运维学习历程-第八天-Linux文本工具sed与Vim(vi)

    概述:    本篇我们主要学习两个功能非常强大的文本编辑器,了解这两种文本编辑器的各自的特点 一、sed命令:  1、sed简介:     sed(Stream EDitor)是一种流编辑器、行编辑器。逐行处理文本内容,即一次处理一行内容,处理时,当前处理的行存储在“模式空间”(pattern sp…

    Linux干货 2016-08-15
  • Linux的哲学思想

    Linux的哲学思想 一切皆文件 不管是普通的文件、目录,还是跟硬件相关的字符设备、块设备、套接字等在Linux中都被当作文件来进行统一的操作管理。 单个程序完成简单的功能,复杂的功能由多个程序组合而成 单个程序只实现简单功能,保证了其高效运行,而复杂功能由多个简单程序组合而成,也能保证一定的高效性。 尽量避免与用户交互 程序从启动开始到结束不需要用户参与,…

    Linux干货 2017-07-02
  • exit和退出码

    用途说明 exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行。   常用参数 格式:exitn 退出。设置退出码为n。(Causethe shell to exit with a status of n.)   格式:exit 退出。退出码不变,即为最后一个命令的退出码。(Ifn is omitted, the e…

    Linux干货 2016-01-14
  • OPENSSL&DNS

      1、详细描述一次加密通讯的过程,结合图示最佳。 Client 从互联网下载CA的公钥,用于验证Server身份 Server 通过加密算法生成一对密钥,将公钥发给CA认证机构,做数字证书 CA 通过自己的私钥加密 Server 公钥并加上自己的数字签名后,将生成的数字证书发给Server Client 与 Server 通TCP的三次握手建立连…

    Linux干货 2016-12-05
  • NTP服务器搭建

        1、NTP(Network Time Protocol)         在计算机世界中,NTP(Network Time Protocol,网络时间协议)被广泛用于对时间的统一性和准确性要求非常高的场景,是用来使网络中的各个计算机时间同步的一种协议。…

    Linux干货 2015-11-18

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-22 11:17

    写的很好,排版也很棒, 加油