章节5 文件与目录管理

5-Linux文件和目录管理

(Linux操作系统-2022的前面章节都为铺垫)

常见命令格式

Command Options Arguments

命令 选项 参数

rm -rf /*

-一个字母或字母组合,此选项为短选项,–单词,此选项为长选项

Options选项:命令的行为方式

Arguments参数:命令的对象

章节5 文件与目录管理_第1张图片

f:force强制

规范

  • 命令
  • 空格
  • 大小写
  • 顺序

章节5 文件与目录管理_第2张图片

章节5 文件与目录管理_第3张图片

章节5 文件与目录管理_第4张图片

章节5 文件与目录管理_第5张图片

章节5 文件与目录管理_第6张图片

补充:

df:显示磁盘空间使用情况

-h:以容易阅读的方式显示

-T: 输出时显示文件系统类型

在这里插入图片描述

在这里插入图片描述

补充:

-c :建立一个压缩文件的参数指令(create 的意思)

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

tar -cvf /tmp/fffmo.com.tar fffmo.com ##仅打包,不压缩!

命令选项详细参考资料

https://wangchujiang.com/linux-command

(无需背,用到查)

https://www.linuxcool.com

列出目录内容和属性

命令:ls

全拼:list

格式:ls 选项 文件名

例:

ls -a

ll --block-size=M

章节5 文件与目录管理_第7张图片

补充:

在linux中,“ll”命令指的是“ls -l”命令,它是“ls -l”命令的一个别名,用于以长格式显示目录下的内容列表;输出的信息从左到右依次包括文件名(在最右边),文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等。

-C # 多列输出,纵向排序。

-F(Filetype) # 每个目录名加 “/” 后缀,每个 FIFO**(补充:存储器,是系统的缓冲环节,)** 名加 “|” 后缀, 每个可运行名加“ * ”后缀。

-R(Recursion) # 递归列出遇到的子目录。

-a # 列出所有文件,包括以 “.” 开头的隐含文件。

-d # 将目录名像其它文件一样列出,而不是列出它们的内容。

-i # 输出文件前先输出文件系列号(即 i 节点号: i-node number)。

-q # 将文件名中的非打印字符输出为问号。(对于到终端的输出这是缺省的。)

-t # 按时间信息排序。

-r, --reverse # 逆序排列目录内容。

-s, --size # 在每个文件名左侧输出该文件的大小,以 1024 字节的块为单位。如果设置了 POSIXLY_CORRECT 的环境变量,除非用“ -k ”选项,块大小是 512 字节。

打印工作路径

命令:pwd

全拼:print working directory

格式:pwd

切换工作目录(复习)

命令:cd

全拼:change directory

格式:cd 相对路径或者绝对路劲

符号 指代
绝对路径 由根目录 / 开始写起
相对路径 从当前所在的工作目录开始写起
/ 根目录
. 代表当前目录
~ 代表用户工作目录,vim ~/.bashrc
…/ 代表上一级目录
…/…/ 上上一级目录,以此类推,超出范围的时候代表根目录

章节5 文件与目录管理_第8张图片

查看文件类型

命令:file**(用的不多,稍微了解)**

格式:file 选项 文件或目录

file -i 文件名(查出来的文件类型会更详细,对空文件使用file查询不出来文件类型)

章节5 文件与目录管理_第9张图片

复制文件或目录

命令:cp

全拼:copy

格式:cp 选项 源文件 目标文件

(大部分情况下我们不带任何选项)

-R/r:递归处理,将指定目录下的所有文件与子目录一并处理;

-f:强行复制文件或目录,不论目标文件是否已存在;

章节5 文件与目录管理_第10张图片

在这里插入图片描述

-a:此参数的效果和同时指定"-dpR"参数相同;

-d:当复制符号链接时,把目标文件或目录也建立为符号链接,并指向与源文件或目录连接的原始文件或目录;

-i(inqure):覆盖既有文件之前先询问用户;

-v(verbose):详细显示命令执行的操作

补充:

-p:保留源文件或目录的属性;

查找文件或者目录-1

find**(一定要掌握,可能面试会问)**

格式:find 目录 选项 名字或模式

-name 名字 (用的最多)

find /etc -name a*

find / -name “aaa” 2>/dev/null

-type 类型参数

f 普通文件,d 目录

find /root -type f

查找文件或者目录-2

-size大小

find /root -type f -size 10M

-exec command

把find找到的内容作为命令的参数去执行

{}就是找到的内容

find . -name “*.txt” -exec rm -rf {} ;(包括子目录)

find . -name aaa -exec mv {} bbb ;

**补充:**mv——改名

其他查找命令(了解,无需记忆)

whereis:查找二进制程序、代码等相关文件路径

which:查找并显示给定命令的绝对路径

locate:updatedb程序每天会跑一次,建立文件索引

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

章节5 文件与目录管理_第11张图片

补充:

nc:用于设置路由器,是网络工具中的瑞士军刀。

创建目录

命令:mkdir

全拼:make directory

格式:mkdir 选项 目录名

mkdir test

mkdir -p /usr/local/soft/redis

-p或–parents:若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;

在这里插入图片描述

在这里插入图片描述

-m<目标属性>或–mode<目标属性>:建立目录的同时设置目录的权限;

移动或者重命名

命令:mv

全拼:move

格式:mv 选项 原文件 新文件

mv 1.txt 2.txt

mv /a/1.txt /b/1.txt

windows中F2可以对文件进行重命名

章节5 文件与目录管理_第12张图片

在这里插入图片描述

–backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;(和cp一样)

-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;

-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。

删除文件

命令:rm

全拼:remove

格式:rm 选项 (多个)文件名

删除空目录:rmdir

-r或-R(recursive) 递归(连同子文件夹一起删除)

-f 强制删除

find . -name “a.json” -exec rm -rf {}

章节5 文件与目录管理_第13张图片

-i:删除已有文件或目录之前先询问用户;

-v:显示指令的详细执行过程。

创建空文件

命令:touch

格式:touch 选项 文件名

touch a.txt

章节5 文件与目录管理_第14张图片

章节5 文件与目录管理_第15张图片

在这里插入图片描述

补充:

时间戳会随着重新创建相同文件而更新,但内容不会被清空。

-a:或–time=atime或–time=access或–time=use 只更改存取时间;

touch ex2

touch file{1…5}.txt

在这里插入图片描述

挂载mount(学习不会用到,运维管理需要用到)

问题:一个目录怎么使用多个磁盘?

原路径:/dev/sdb1 挂载到:/sdb-u

mkdir /sdb-u

mount /dev/sdb1 /sdb-u

章节5 文件与目录管理_第16张图片

挂载后:

章节5 文件与目录管理_第17张图片

硬链接

命令:ln

全拼:link

格式:ln 源文件 链接文件

创建硬链接:(用户用的不多)

ln 1.php hard.php

vim hard.php

cat 1.php

注意:

  1. 用户不能给目录创建链接(操作系统才能给目录创建链接)
  2. 只有相同的文件系统才可以创建硬链接(tmpfs——linux中最常见的文件系统 NTFS FAT32)

在这里插入图片描述

在这里插入图片描述

编辑即创建文件。

:wq——write and quit

章节5 文件与目录管理_第18张图片

df命令 用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

软链接

查看软链接:

ll /usr/bin/nc

创建硬链接:

ln -s /usr/local/phpstudy/system/phpstudyctl /usr/bin/st

-s, --symbolic # 对源文件建立符号链接,而非硬链接

使用:

st

源文件删除,软链接失效

在这里插入图片描述

可以进行改名

yum install -y wget && wget -O install.sh https://notdocker.xp.cn/install.sh && sh install.sh

在这里插入图片描述

你可能感兴趣的:(网络安全,linux,运维,文件与目录管理)