Linux上天之路,六之Linux文件管理

文件与文件夹的操作

1) 新建
2)改名
3)查看
4)删除
5)拷贝
6)移动

1. 文件的操作

文件的新建:touch filename
文件的改名:mv
文件的查看:ls
文件内容的查看:cat
文件的删除:rm     [-r -f]
文件的拷贝:cp     [-r -f -p]
文件的移动:mv

文件的创建-touch

touch命令   新建文件和修改文件或者文件的时间戳
命令语法:
      touch  【选项】 【文件名或者目录名】
命令选项:
      -a  只修改文件的access(访问)时间.
      -c  或—no-create  不创建不存在的文件。
      -d  使用指定的日期时间,而非现在的时间
      -m 指修改Modify(修改)时间,而不修改access(访问)时间
      -r  file  使用指定file文件的时间戳(access,modify)更新文件的时间戳(access,modify)
      -t  将时间修改为参数指定的日期,如:10011150代表10月8号11点55分

拓展:linux文件的三time
stat命令:打印信息节点(inode)内容
atime:(access time)显示的是文件中的数据最后被访问的时间,比如系统的进程直接使用或通过一些命令和脚本间接使用。
mtime: (modify time)显示的是文件内容被修改的最后时间。
ctime: (change time)显示的是文件的权限、拥有者、所属的组、链接数发生改变时的时间。当然当内容改变时也会随之改变 rm命令

文件的删除-rm

rm命令  删除文件
命令语法
  rm [options] name…
命令选项
  -i 删除前逐一询问确认。
  -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
  -r 将目录及以下之档案亦逐一删除。

文件改名-mv

mv命令  文件改名
命令语法:
mv  old_file   new_file

文件查看

  • cat
cat 命令用于连接文件并打印到标准输出设备上。  
  命令语法  
       cat [选项列表] [文件列表]
  命令选项  
  -n 或 --number:        由 1 开始对所有输出的行数编号。  
  -b 或 --number-nonblank:    和 -n 相似,只不过对于空白行不编号。  
  -s 或 --squeeze-blank:        当遇到有连续两行以上的空白行,就代换为一行的空白行。  
  -v 或 --show-nonprinting:    使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。  
  -E 或 --show-ends :         在每行结束处显示 $。  
  -T 或 --show-tabs:         将 TAB 字符显示为 ^I。  
  -A, --show-all:        等价于 -vET。  
  -e:                等价于"-vE"选项;  
  -t:                等价于"-vT"选项;
  • head
head - 输出文件的开始部分
命令语法  
      head \[OPTION\] \[FILE\]
命令选项  
  -c, --bytes=SIZE          打印起始的SIZE字节  
  -n, --lines=NUMBER         显示起始的NUMBER行,而非默认的起始10行  
  -q, --quiet, --silent         从不显示给出文件名的首部  
  -v, --verbose             总是显示给出文件名的首部  
  --help             显示帮助后退出  
  --version             输出版本信息后退出
  • tail
tail - 输出文件的末尾部分
命令语法  
      tail \[OPTION\]   \[FILE\]
命令选项  
  -f 循环读取  
  -v 显示详细的处理信息  
  -c<数目> 显示的字节数  
  -n<行数> 显示文件的尾部 n 行内容
  • file
[zhangyafei@centos /]$ file /home/zhangyafei/test.py 
/home/zhangyafei/test.py: ASCII text
  • stat
[zhangyafei@centos /]$ stat /home/zhangyafei/test.py 
  文件:"/home/zhangyafei/test.py"
  大小:50         块:8          IO 块:4096   普通文件
设备:fd01h/64769d Inode:368654      硬链接:1
权限:(0664/-rw-rw-r--)  Uid:( 1000/zhangyafei)   Gid:( 1000/zhangyafei)
最近访问:2019-09-24 17:51:37.167020785 +0800
最近更改:2019-09-24 17:51:37.167020785 +0800
最近改动:2019-09-24 17:51:37.179020788 +0800
创建时间:-
  • 文件类型

普通文件
d 目录
l 链接文件
b 设备文件
c 字符设备
s 套接字文件
p 管道文件
  • linux 文件颜色意义

绿色文件: 可执行文件,可执行的程序 
红色文件:压缩文件或者包文件
蓝色文件:目录
白色文件:一般性文件,如文本文件,配置文件,源码文件等 
浅蓝色文件:链接文件,主要是使用ln命令建立的文件
红色闪烁:表示链接的文件有问题
黄色:表示设备文件
灰色:表示其他文件

 文件移动-mv

mv命令  文件移动

命令语法:
mv [选项] 源文件或目录       目标文件或目录

命令选项
-b:若需覆盖文件,则覆盖前先行备份。
-i:若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f:force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-u:若目标文件已经存在,且 source 比较新,才会更新(update)

拓展:mv src dST
    改名 dst是一个文件夹的时候  执行是移动
        dst不是一个文件夹的时候 执行改名

 文件拷贝-cp

cp命令  拷贝文件
命令语法  
  cp [options] 源文件或目录    目标目录
命令选项  
  -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容  
  -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。  
  -f:覆盖已经存在的目标文件而不给出提示。  
  -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。  
  -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。  
  -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。  
  -l:不复制文件,只是生成链接文件。

2. 文件夹的操作

新建文件夹:mkdir
文件夹改名:mv
文件夹插卡:ls
空文件夹的删除:rmdir
不为空的文件夹的删除:rm -rf 递归删除
文件夹移动:mv
文件夹拷贝:cp [-r -p -f]
  • mkdir
mkdir  建立目录
命令语法
      mkdir [选项] 目录
命令选项
  -v   显示信息
  -p   递归创建
  • rmdir
rmdir 删除空目录
命令语法
  rmdir  [options]  directory
命令选项
  -p   递归删除空目录