Linux运维实战之2-1:文件管理类命令

Linux运维实战之2-1:文件管理类命令本次博文我们来学习下Linux系统中使用频率比较高的文件管理类命令哈。

主要内容:

    1、文件管理的概述;

    2、文件管理命令详解


上次博文,我们学习了Linux的哲学思想,其中之一就是:Linux中一切皆文件。由此,文件管理就是Linux系统的重要功能之一。

一、文件管理的概述:

问题引入:Linux系统是如何管理文件的?

这个问题我们在上次博文也阐述过了哈。在Linux系统中,文件/目录被组织成一颗倒置的树状结构。层次化结构能够大大减小查找的复杂度–>如果系统内文件很多,则目录文件会变得很长,要查找某个文件将耗费太多的时间(例如:我们要查找一个文件,但不知道它存储在什么地方,此时我们就需要从“/”开始查找,那肯定是非常耗时间哈。若此时我们知道这个文件保存在"/var/log/” 下,那查找起来肯定快的多哈!)。树是一种层次化的数据结构,它由根结点,子结点以及子子结点组成。Linux借用树状结构来组织它的文件目录,形成树型目录组织。树型目录组织是多级目录组织的一种形式。

对应的文件操作为:增(创建新文件)、删(删除文件)、查(查看、查找一个文件)、改(修改一个文件的名称或内容)4种。做个简单的归纳,如下图所示:

Linux运维实战之2-1:文件管理类命令文件管理命令v01.png 


二、文件管理命令详解:

根据上面的文件管理命令归纳图,我们详细介绍下具体的使用方法和注意事项。

1、mkdir:创建目录命令

命令名称:mkdir
命令
英文原意:make directories
命令所在路径:/bin/mkdir
执行权限:所有用户
语法:mkdir [选项] [目录名]
功能描述:创建新目录
常用的选项:
-p:如果父目录不存在则创建之
-v:显示创建过程

范例:创建/tmp/etc/rc.d, /tmp/etc/rc.d/init.d, /tmp/etc/rc.d/rc0.d, /tmp/etc/sysconfig, /tmp/etc/pam, /tmp/etc/yum.repos.d/

Linux运维实战之2-1:文件管理类命令blob.png

2、cp:复制文件或目录命令

命令名称:cp命令
英文原意:copy
命令所在路径:/bin/cp
执行权限:所有用户
语法:cp 选项 [源文件或目录] [目的目录]
常用选项:
-r,-R:递归复制
-a:全递归复制,尽可能将档案状态、权限等资料都照原状予以复制,其作用等于dpR选项的组合
-i:交互式(覆盖前提醒确认)
-v:显示命令执行过程

范例:将上个例子中的/tmp/etc/下的内容复制到/root/etc/

Linux运维实战之2-1:文件管理类命令blob.png

3、rm:删除命令

命令名称:rm
命令英文原意:remove
命令所在路径:/bin/rm
执行权限:所有用户
功能描述:删除
文件语法:rm  [选项]  [文件或目录]
常用选项:
-i:交互式(删除前提醒确认)
-f:强行删除
-r:递归删除目录及其内部的所有文件

范例:强行删除/目录下的所有文件(注意,删除前在虚拟机中做好快照备份)

blob.pngLinux运维实战之2-1:文件管理类命令 

提示说删除根是非常危险的哈(root用户有至高无上的权力,可以删除一切),这里有保护不给直接删除,不过看下面的:

Linux运维实战之2-1:文件管理类命令blob.png

blob.png Linux运维实战之2-1:文件管理类命令

找不到命令了都,文件彻底没了哈!~所以,慎用rm -rf 命令;

4、rmdir:删除空目录

命令名称:rmdir
命令英文原意:remove directory
命令所在路径:/bin/rmdir
执行权限:所有用户
功能描述:删除目录,注意,目录必须为空目录
语法:rmdir  [选项]  [文件或目录]

范例:

blob.png

5、ls:列出目录内容

命令名称:ls
命令英文原意:list
命令所在路径:/bin/ls
执行权限:所有用户
功能描述:显示目录内容
语法:ls  [选项]  [文件或目录]
常用选项:
-a:显示所有文件,包括隐藏文件
-l: 以长列表方式显示目录下的文件(文件的元数据信息)        
-i:显示文件的inode号(关于inode号的知识以后详解哈)
-d:只显示目录本身
-A:跟-a相同,但不显示.和..
-n:类似于-l,但是以用户及组的id号排序
-h:与-l一起使用,文件大小会自动进行单位换算
-r:文件名逆序显示
-R:递归显示

范例:以长列表模式显示/tmp/目录下的所有内容,并显示/tmp/etc/目录的属性情况。

Linux运维实战之2-1:文件管理类命令blob.png

6、pwd:显示当前/工作目录

命令名称:pwd
命令英文原意:print working directory
命令所在路径:/bin/pwd
执行权限:所有用户
语法:pwd
功能描述:显示当前所在的工作目录

范例:显示当前处在哪个目录下

blob.png

7、cat/tac:显示文件的内容

命令名称:cat(tac)
命令英文原意:concatenate and display files
命令所在路径:/bin/cat
执行权限:所有用户
功能描述:显示文件内容
语法:cat  [文件名]

范例:显示目录/etc/的内容,显示/etc/fstab文件的内容

blob.png

8、less/more:分屏显示文件内容

命令名称:less/more
命令所在路径:/bin/less(more)
执行权限:所有用户
功能描述:分屏显示文件内容
语法:less/more  [文件名]

范例:man命令显示的帮助文档,是用解压软件解压后用less命令显示出来的。例如显示/etc/rc.sysinit文件的内容

blob.png

基本操作:
1、搜索
当使用命令 less file-name 打开一个文件后,可以使用下面的方式在文件中搜索。搜索时整个文本中匹配的部分会被高亮显示。
向前搜索
  / - 使用一个模式进行搜索,并定位到下一个匹配的文本
  n - 向前查找下一个匹配的文本
  N - 向后查找前一个匹配的文本
向后搜索
  ? - 使用模式进行搜索,并定位到前一个匹配的文本
  n - 向后查找下一个匹配的文本
  N - 向前查找前一个匹配的文本
2、全屏导航
  ctrl + F - 向前移动一屏
  ctrl + B - 向后移动一屏
  ctrl + D - 向前移动半屏
  ctrl + U - 向后移动半屏
3、单行导航
  j - 向前移动一行
  k - 向后移动一行
4、 其它导航
  G -移动到最后一行
  g -移动到第一行
  q 或Q-退出 less 命令

9、head/tail:查看文件的前(后)几行

命令名称:head/tail
命令所在路径:/bin/head(tail)
执行权限:所有用户
功能描述:查看文件的前(后)几行,默认查看前(后)10行
语法:head -num [文件名]
常用选项:
-num 显示文件的前(后)num行

范例:查看/etc/passwd文件的后5行

blob.png


10、wc:文字统计命令

语法:wc  [选项]  [文件]
常用选项:
-l:只显示行数
-w:只显示单词数
-c:只显示字节数

例如:
blob.png

第一个字段的数字 :行数

第二个字段的数字:单词数

第三个字段的数字:字节数

11、cut:以列为单位切割文本

语法:cut  [选项]... [文件]...
常用选项:
-d:以指定分隔符切割(默认是以tab为分隔符)
-f:指定切割第几字段,一般后接数字

范例:切割/etc/passwd文件,以:为分隔符,显示用户名(第一字段)

blob.png

12、tr:字符集转换

语法:tr  [options]  '原来的字符集合' '转换为的字符集合'
常用选项:
-d '字符集合':把出现的文件中的、属于字符集合中的字符统统删除;
说明:tr命令的结果不会在标准输出显示,经常通过管道连接使用

范例:将hello world句子中的小写字母转换为大写;

blob.png

把“hello world“句子中的o、w删除:

blob.png

说明:文本处理三剑客grep、sed、awk和文件查找命令find因为涉及到正则表达式的知识,我们后面再用博文总结!

 13、mv:移动文件或改名

命令名称:mv
命令英文原意:move
命令所在路径:/bin/mv
执行权限:所有用户
功能描述:移动文件、更名
语法:mv [选项]  源文件或目录  目的目录

范例:将/tmp/etc/目录重命名为/etc/config

 blob.png


14、touch:修改文件时间戳

命令名称:touch
命令所在路径:/bin/touch
执行权限:所有用户
语法:touch  [文件名]
功能描述:修改文件时间戳,如果文件不存在则创建空文件
常用选项:
-a:改变访问时间
-m:改变修改时间
-t:用[[CC]YY]MMDDhhmm[.ss]代替当前时间

范例:修改/tmp/touch.txt文件的时间戳

blob.png

可以看到用touch命令创建了一个空文件。现在的问题是如何查看/tmp/touch.txt的时间戳呢?

补充命令:stat–查看文件的属性信息 

blob.png

用touch命令修改文件/tmp/touch.txt的时间戳:

blob.png

15、cd:切换目录

命令名称:cd
命令英文原意:change directory
命令所在路径:shell内置命令
执行权限:所有用户
语法:cd [目录]
功能描述:切换目录

范例:

  • 回用户的家目录:

blob.png

  • 切换至USERNAME的家目录 (注:必须要有相应的权限):cd ~USERNAME :

blob.png

  • 在两个目录间来回切换:cd –

blob.png


本次博文就这么多哈,欢迎各位大大指正!~~

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

(0)
上一篇 2016-11-06 00:29
下一篇 2016-11-06 00:37

相关推荐

  • 从增删改查角度学习linux基础命令

    从增删改查角度学习linux基础命令   本文从文件的增加、删除、修改、查询四个角度介绍linux的基本命令,介绍如下:   一.增 touch命令是最常用的创建文件的命令,它的常见参数如下: -a 或–time=atime或–time=access或–time=use  只更改存取时间。 -c 或&#…

    2017-07-15
  • Linux文件管理类命令

    文件管理工具:cp,mv,rm cp命令:copy,用于实现复制功能      源文件 —-> 目标文件        cp [OPTION]… [-T] SOURCE DEST   #单源复制        …

    Linux干货 2016-08-22
  • 磁盘及文件系统管理应用实例

    磁盘及文件系统管理应用实例 1.创建一个10G的分区,并格式化为ext4文件系统 要求其block大小为2048,预留空间百分比为2,卷标为MYDATA,默认挂载属性包含acl 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 [root@master ~]# fdisk /dev/sdb Command (m for…

    Linux干货 2017-08-14
  • Linux网络属性配置

      一台主机想要接入网络就必须配置相关的网络属性,如:主机名、IP地址、子网掩码、网关、DNS等,下面总结了网络属性的配置方法。 一、配置主机名   主机名配置有两种方式:命令和配置文件。   1、hostname命令    可以使用hostname命令来配置主机名,不过这样配置的主机名不会永久生效,只能在当…

    Linux干货 2016-01-06
  • Shell编程 详解特殊变量之位置参数

    今天我们来探讨shell编程的特殊变量:位置变量。 首先我创建了一个testargs.sh的小脚本: #!/usr/bin/env bash # # Author: jacky18676887374@aliyun.com # date: 20160813-19:30:59 # Vervion:&nb…

    Linux干货 2016-08-15
  • 学习札记:用户管理,权限管理和ACL欢乐”斗地主”

    补充:touch /etc/nologin 启动系统维护功能,其他用户不能登陆,除了管理员,可以自定义内容,在普通用户登陆的时候可以看到相关维护提示,解除维护模式的话,必须要删除该文件,另外可以创建/run/nologin达到相同的效果(仅限于CentOS 7), 用户属性修改 usermod [OPTION] login -u UID: 新UID -g G…

    Linux干货 2016-08-04

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-10 20:24

    赞,总结的比较全面~~注意下排版会更好~加油~