linux常用的文件,目录管理命令总结和文件元数据信息含义

常用的文件管理类命令及其具体用法

1.rmdir删除空目录

       -p 递归删除多级空目录
       这个命令不能删除非空目录
例如
[root@dxlcentOS ~]# rmdir /tmp/we
rmdir: 删除 "/tmp/we" 失败: 目录非空
[root@dxlcentOS ~]# rmdir /tmp/we2

2.mkdir创建目录

常用选项
-p 自动递归创建你需要的目录,包括不存在的父目录和子目录
-v 显示创建过程
-m 直接指定创建所创建的目录权限,不需要看umask的面色,也就是略过 umask:文件的权限反向掩码,遮罩码
例如:在/tmp下面创建目录linux123,并指定权限为rwxr–r–。 创建/tmp/we/1/2/3

[root@dxlcentOS ~]# mkdir -m 744 /tmp/linux123
[root@dxlcentOS ~]# ll -d /tmp/linux123/
drwxr--r--. 2 root root 6 9月  30 12:57 /tmp/linux123/
[root@dxlcentOS ~]# mkdir -p /tmp/we/1/2/3
Try 'tr --help' for more information.
[root@dxlcentOS ~]# tree /tmp/we
/tmp/we
└── 1
    └── 2
        └── 3

3.tree 显示目录树状结构

常用选项
-L 显示设定目录深度
例如

[root@dxlcentOS ~]# tree -L 2 /tmp/we  显示/tmp/we下面两级子目录
/tmp/we
└── 1
    └── 2

4.cp复制命令

常用选项
-a 相当于-drp三个选项,用于连文件属性一起复制,备份常用
-i 交互式,有相同名字文件或文件存在时提示是否覆盖
-p 复制文件的属性(权限,时间,用户)一起复制过来,备份常用
-f 强制复制
-r 递归复制,用于复制目录
-s 复制成为符号链接的文件
-u 若目标文件比要复制的源文件旧旧进行复制或目标文件不存在时进行复制
-d 复制链接文件的属性而非文件的本身
例如

[root@dxlcentOS ~]# cp -a /var/log/wtmp /tmp/wtmp3
[root@dxlcentOS ~]# ll /tmp/wtmp /tmp/wtmp3
-rw-r--r--. 1 root root 50304 9月  30 13:29 /tmp/wtmp
-rw-rw-r--. 1 root utmp 50304 9月  30 11:39 /tmp/wtmp3

[dxl@dxlcentOS ~]$ cp -a /var/log/wtmp /tmp/wtmpdxl
[dxl@dxlcentOS ~]$ ll /tmp/wtmp /tmp/wtmp2 /tmp/wtmpdxl    
-rw-r--r--. 1 root root 50304 9月  30 13:29 /tmp/wtmp
-rw-rw-r--. 1 dxl  dxl  50304 9月  30 11:39 /tmp/wtmpdxl   
注意:-a选项,普通用户和管理员复制文件属性有区别

5.rm删除命令 。这个命令比较危险,使用时要把要删除的文件备份好,过一段时间确认可以删除才可以操作

常用选项
-i 交互式,删除前提示
-f 强制删除,不提示不警告
-r 递归删除,常用于目录
例如删除/tmp/linux123

[root@dxlcentOS ~]# rm -rf /tmp/linux123/
千万不能进行下面操作
~]# sudo  rm  -rf  /  删除根分区全部文件
~]# sudo  rm  -rf  /. 删除当前目录下所有文件
~]# sudo  rm  -rf  * 同上
~]# sudo  rm  -rf  *.*  同上
~]# sudo  rm  -rf  / & 删除根分区和家目录

6.mv 移动命令,用于移动文件或目录到 别的地方或者修改文件名

常用选项
-f 强制移动
-i 交互式,若目标已存在,提示是否覆盖
-u 弱目标已存在,源文件比较新,才会更新
例如

[root@dxlcentOS tmp]# mv ./wtmp ./wtmp333  把/tmp/wtmp 改为wtmp333
[root@dxlcentOS tmp]# mv ./wtmp333 /var/log  把wtmp333移动到/var/log下面

文件的元数据信息有哪些,分别代表什么含义?如何修改文件的时间戳信息?

stat命令

stat命令:查看文件元数据信息
stat – display file or file system status
stat FILE…

例如

[root@dxlcentOS ~]# stat /tmp/functions 
  File: '/tmp/functions'
  Size: 17500           Blocks: 40         IO Block: 4096   regular file
Device: 803h/2051d      Inode: 16819217    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:bin_t:s0
Access: 2017-09-30 11:26:28.375999869 +0800
Modify: 2017-05-03 18:17:50.000000000 +0800
Change: 2017-09-30 15:24:43.396955205 +0800
 Birth: -

我们可以看到的信息有:文件的大小17500Byte,有40个数据块,每个数据块大小是4k。Inode号16819217。也就是文件的索引号,硬链接次数,文件的权限,UID.GID等。
最近一次访问时间:Access: 2017-09-30 11:26:28.375999869 +0800
最近一次内容修改时间:Modify: 2017-05-03 18:17:50.000000000 +0800
文件的属性改变,例如权限和和属性改变,这个时间会改变。Change: 2017-09-30 15:24:43.396955205 +0800
+0800表示格林威治时间。一长串数字375999869 ,是系统元年1970.1.1到现在经过的秒数。

touch命令:用于修改文件时间戳或创建新文件

touch – change file timestamps
touch [OPTION]… FILE…
-c: 指定的文件路径不存在时不予创建;
-a: 仅修改access time;
-m:仅修改modify time;
-t STAMP
[[CC]YY]MMDDhhmm[.0]
例如

[root@dxlcentOS ~]# touch  -t 201209201320 /tmp/functions                      
[root@dxlcentOS ~]# stat /tmp/functions                   
  File: '/tmp/functions'
  Size: 17500           Blocks: 40         IO Block: 4096   regular file
Device: 803h/2051d      Inode: 16819217    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:bin_t:s0
Access: 2012-09-20 13:20:00.000000000 +0800
Modify: 2012-09-20 13:20:00.000000000 +0800
Change: 2017-09-30 15:39:33.043918708 +0800
[root@dxlcentOS ~]# touch -m  -t 201509201320 /tmp/functions   
加-m 修改文件的内容修改时间为2015年
[root@dxlcentOS ~]# stat /tmp/functions                      
  File: '/tmp/functions'
  Size: 17500           Blocks: 40         IO Block: 4096   regular file
Device: 803h/2051d      Inode: 16819217    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:bin_t:s0
Access: 2012-09-20 13:20:00.000000000 +0800
Modify: 2015-09-20 13:20:00.000000000 +0800
Change: 2017-09-30 15:40:44.789915765 +0800

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/87649

(0)
N27_dxldengN27_dxldeng
上一篇 2017-10-05
下一篇 2017-10-05

相关推荐

  • Linux文件管理类命令相关

    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 1)、查看文件命令: (1)ls命令: list,列出目录下的内容 语法: ls [OPTION]… [FILE]… 常用选项: -a: 显示所有文件,包括隐藏文件; -A:显示除.和..之外的所有文件; -l: –long, 长格式列表,即显示文件的详细属性信息; -h, –huma…

    Linux干货 2016-11-06
  • Linux之文件管理命令

      Linux文件管理类命令 Linux一切皆文件,所以熟悉文件管理命令对我们来说至关重要 文件查看命令 cat命令:文本文件查看工具 命令用法:         cat [OPTION]… [FILE]… 常用选项:  &nbsp…

    Linux干货 2016-11-04
  • LAMP平台基于NFS实现web服务器负载均衡

    前言 随着访问量的逐渐增大,一台web服务器可能已经无法满足需求,这就需要增加web服务器的数量了,于是问题就来了:如何保证两台服务器数据同步呢?本文将讲解如何基于NFS实现web服务器的负载均衡及数据同步。 NFS服务介绍 NFS(Network File System)网络文件系统,允许一个系统通过网络共享目录和文件,通过使用NFS,用户和程序可以像访问…

    Linux干货 2015-04-22
  • Linux find命令使用详则

    find命令 find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录欲文件。并且将查找到的子目录和文件全部进行显示。 语法 find(选项)(参数) 选项 -amin<分钟>:查找在指定时间曾被存取过的文件或者目录,单位以分钟计算; -ane…

    2017-08-03
  • 从增删改查角度学习linux基础命令

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

    2017-07-15
  • while循环中的一个常见问题

    在楼主刚刚学习接触while循环的时候,发现了一个问题,在while循环内部对变量赋值、定义变量、数组定义等等环境,在循环外面失效。 一个简单的测试脚本如下: 执行结果证明,$new_var的结果是空值。在google上查了查,才发现问题出在管道上。 先看看下面的内容。 while循环的写法有好几种,它的语法结构为: while test_cmd_list;…

    2017-08-26