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)
上一篇 2016-07-22 10:05
下一篇 2016-07-22 10:06

相关推荐

  • 马哥教育网络19期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;         [root@Hao ~]# fdisk /dev/sdb  &n…

    2016-07-07
  • Linux基础解析;echo;man;centos;runlevel;PS1;screen;shell 倒三角;date -d等命令—-fazion blog at22.July

    Linux基础解析 fazionlan blog in 178Linux.July 20nd. 内核、版本信息 # uname -a                 &n…

    Linux干货 2016-07-29
  • Linux磁盘阵列RAID以及mdadm实现软件RAID

    一、概要 RAID(磁盘阵列):由众多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果来提升整个磁盘的性能。 二、RAID的级别及其优缺点 读性能提升 写性能提升 容错能力 组合后空间大小 RAID0 上升 上升 无 n*单个磁盘大小 RAID1 上升 下降 有(最多坏一块磁盘) 1*单个磁盘大小 RAID4 上升 上升 有(…

    2015-04-20
  • 用户创建过程&grep练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。     ~]# cp -r /etc/skel /home/tuser1     ~]# ls -la /home/tuser1  &…

    Linux干货 2016-10-17
  • locate、find命令使用总结

    一、简介    在linux系统中存在"一切皆文件"的说法,这就足以说明文件的重要性,因此查找文件也是我们必须要掌握的技能。这时候熟练使用locate、find命令也就显得至关重要。尤其是find命令常用于日常工作中如安装完某个软件之后要查看这些软件的安装配置路径,或是需要按指定条件直接查找我们需要操作的文件。因此更需…

    Linux干货 2015-08-31
  • 马哥教育网络班22期+第4周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1 [root@localhost ~]# chmod&nb…

    Linux干货 2016-09-05

评论列表(1条)

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

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