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
下一篇 2016-07-22

相关推荐

  • 笔记整理:权限管理1-基础权限管理&默认权限

    权限管理: 权限的分配根据owner和group来进行分配的   对于文件,各个权限的意义: r:可以使用工具查看内容 w:往里写 x:运行,提请内核发起一个进程 对于目录,各个权限的意义: r:用ls 查看目录列表   w:可以创建或删除目录中的文件   x:可以使用ls -l查看文件列表,也可cd进去   管理命令…

    Linux干货 2016-08-05
  • 什么叫Linux

    什么叫linux:     Linux是一套免费使用和自由传播的类Unix操作系统,它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。 谁编写的linux: Linux的出现,最早…

    Linux干货 2017-03-27
  • 【福利招聘】系统运维工程师岗位/上海/6K-12K/ 创业公司/内推

    系统运维工程师   岗位职责: 1、负责服务器维护、优化、调试; 2、负责游戏项目架构优化、技术风险评估、运维体系接入、业务部署、新版本发布、服务端变更等; 3、负责监控游戏业务的运行状况,及时处理游戏运行中出现的故障,保障游戏服务正常; 4、负责与游戏项目组及研发沟通,对业务运营环境中存在的问题进行定期反馈和推动改善。 5、根据业务需求进行团队人…

    Linux职位 2016-05-17
  • shell脚本编程基础

    一.编程基础              程序:指令+数据              程序编程风格:  &n…

    Linux干货 2016-08-12
  • btrfs文件系统常用命令使用

    Btrfs,也可称为B-tree,Butter FS,Better FS,是CentOS7中一种新型的文件系统。 核心特性: 1.多物理卷支持,可由多个物理卷(pv)组成,支持raid,以联机添加删除 2.支持写实复制(Copy on Write,Cow) 复制一份修改,改好之后用指针替换,出错时指回原本文件。而不是就地修改 3.数据及元数据校验码:chec…

    Linux干货 2016-03-07
  • 推荐-LAMP的编译安装

    首先解释一下LAMP,L:Linux;A:apache;M:MariaDB;P:php。Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件。 本文就是介绍编译安装apache2.4,MariaDB5.5,以及php(基于模块化和fpm的这两种方式来配合php提供服务)。 因为php是…

    Linux干货 2016-04-11

评论列表(1条)

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

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