【从零带你玩转Linux】目录文件相关操作指令

563次阅读
没有评论

共计 3858 个字符,预计需要花费 10 分钟才能阅读完成。

 

前言

在使用操作系统时,我们肯定会接触文件和目录,类比于我们常用的 windows 系统,想要更好的管理自己各种各样的工程或者软件,文件夹就是一个不错的管理手段,而在 Linux 中也同样使用了文件夹的操作,但在学习 Linux 之前,我们要首先有一个观念,Linux 下一切皆文件,目录(文件夹)也同样是一个执行文件,在我们所说的 exe 程序,在 Linux 眼中就是一个执行文件,可以用二进制的形式打开😏

列出目录内容 ls / ll

英文全拼:list

语法:

ls [选项 ] [ 目录或文件]

 

特殊语法:

ll  <==>  ls -l

 

ll等同于ls -l

功能:

对于目录,列出该目录下的所有子目录与文件;

对于文件,列出文件名以及其他信息。

常用选项:

选项 含义
-a 列出目录下所有文件,包括隐含文件
-A 同 -a,但是不列出“.”(当前目录) 和“…”(父级目录)
-l 列出文件的详细信息
-R (递归)列出所有子目录下的文件
-r 对目录反向排序
-t 以时间排序
-F 在每个文件名后面附上字符来说明文件类型,”*“表示可执行文件,”/“表示目录,”@“表示链接,”|“表示 FIFOs,”=” 表示套接字
-h 显示文件(粗略)大小

实例:

ls -l
ls -la

 

内容解释:

【从零带你玩转 Linux】目录文件相关操作指令

第一列 共 10 位,

  • 第 1 位表示文档类型,d表示目录,-表示文件,l表示链接文件,b表示可随机存取的设备,如 U 盘等,c表示一次性读取设备,如鼠标、键盘等。
  • 后 9 位,依次对应三种身份所拥有的权限,身份顺序为:owner(拥有者)、group(群组)、others(其他人),权限顺序为:readable(可读)、writable(可写)、excutable(可执行 表示可执行文件,但内部一定要是正确的二进制编码才可执行,强行修改也运行不了)。
  • 如:-r-xr-x---的含义为 当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可执行,其他人没有任何权限

第二列 表示链接数,表示有多少个文件链接到 inode 号码

第三列 表示 owner(拥有者)

第四列 表示所属 group(群组)

第五列 表示文档容量大小,单位字节

第六七八列  表示文档 最后修改时间 ,注意 不是 文档的 创建时间

  • 从前到后,分别是 月 日 具体时间

第九列  表示文档名称。以点(.) 开头的是隐藏文档

【从零带你玩转 Linux】目录文件相关操作指令

显示文件 inode 信息 stat

语法:

stat [文件或目录]
  • 1

功能:

查看文件 inode(索引节点)信息

实例:

stat test.c

stat dir

 

【从零带你玩转 Linux】目录文件相关操作指令

内容解释:

[root@VM-8-11-centos code]# stat dir
  File:‘dir’Size: 4096            Blocks: 8          IO Block: 4096   directory
Device: fd01h/64769d    Inode: 791878      Links: 2
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-10-02 19:25:09.146174770 +0800
Modify: 2022-10-02 19:25:09.146174770 +0800
Change: 2022-10-02 19:25:09.146174770 +0800
 Birth: -
  文件名:‘dir’大小: 4096          (以 512 字节为单位的 ) 块数量: 8          文件最小寻址单元: 4096   目录
设备: fd01h/64769d    索引节点: 791878      连接到此文件的数量: 2
权限: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
最近访问时间: 2022-10-02 19:25:09.146174770 +0800
最近更改时间: 2022-10-02 19:25:09.146174770 +0800
最近 inode 更改时间: 2022-10-02 19:25:09.146174770 +0800
 创建时间: -

 

显示用户当前所在位置 pwd

语法:

pwd

 

功能:

显示用户当前所在位置

实例:

【从零带你玩转 Linux】目录文件相关操作指令

跳转工作目录 cd

语法:

cd [目录名]

 

功能:

跳转工作目录。将当前工作目录改变到指定的目录下。

实例:

cd .. : 返回上级目录
cd /home/zhangsan/code : 绝对路径
cd ../day02/ : 相对 ( 上级的 ) 路径
cd ~ : 进入用户家目
cd - : 返回最近访问目录

 

【从零带你玩转 Linux】目录文件相关操作指令

创建 / 更新文件信息 touch

语法:

touch [选项 ] [ 文件名]

 

功能:

  1. 若文件不存在,创建一个新的文件
  2. 更改文件或目录的日期时间,包括存储时间和更改时间

常用选项:

选项 含义
-a 修改(Access)最近访问时间
-d 设定指定日期时间
-m 修改(Modify)最近更改时间
-c 若文件不存在,不创建新文件

实例:

touch file

touch -d 2022-10-10 file

【从零带你玩转 Linux】目录文件相关操作指令

创建目录 mkdir

语法:

mkdir [目录名]

 

功能:

创建目录

实例:

mkdir dir

 

删除目录 rmdir

语法:

rmdir [-p] [目录名]

功能:

删除所选择目录

参数说明:

  • -p:当子目录全部被删除后父目录变成空目录,就把父目录一起删除

实例:

将工作目录下,名为 dir 的子目录删除 :

rmdir dir

 

在工作目录下的 dir 目录中,删除名为 test 的子目录。若 test 删除后,dir 目录成为空目录,则 dir 删除。

rmdir -p dir/test

 

删除文件 / 目录 rm

英文全拼:remove

语法:

rm [选项 ] [ 文件或目录]

功能:

删除文件或目录(删除目录要一定要配合 -r)

常用选项:

选项 含义
-r (递归删除)删除目录下所有文件
-f 即使文件属性为只读(即写保护),直接删除(不询问)
-i 删除前逐一确认

实例:

删除文件:

rm file

删除目录前询问:

rm -ri dir

删除根目录下所有文件,且不询问:(当你在接触公司数据库的时候输入这一段,那多半是废了,可以准备提桶跑路了)

rm -rf /

输完之后,你的远程服务器多半也用不了了,可以选择重装

复制文件 / 目录 cp

英文全拼:copy

语法:

cp [选项 ] [ 源文件 / 目录 ] [ 目的地文件 / 目录]

功能:

复制文件或目录

注意:

若目的地并非一个存在的目录则会出现错误信息

常用选项:

选项 含义
-f 覆盖已经存在的目标文件而不给出提示
-i 覆盖已经存在的目标文件每次询问
-r (递归拷贝)若是目录,将此目录下的所有子文件和子目录一起复制
-l 不复制文件,只生成连接文件

实例:

将 dir1 递归拷贝至 dir2

cp -r dir1 dir2

移动 / 重命名 文件 / 目录 mv

英文全拼:move

语法:

mv [选项 ] [ 源文件或目录 ] [ 目标文件或目录]

 

功能:

  1. 将源文件名改为目标文件名(文件 x 文件)
  2. 将源文件移动到目标目录中(文件 x 目录)
  3. 目标目录名存在,将源目录移动到目标目录;目标目录名不存在,将源目录名改为目标目录名(目录 x 目录)

常用选项:

选项 含义
-f 强制移动目录或文件,若目标文件或目录同名,不询问
-i 若目标文件或目录同名,询问
-b 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份

实例:

重命名

mv a.txt b.txt

mv a.txt /home/dir1/b.txt

 

目标目录与源目录位置不同,没有指定新文件名,效果就是仅仅移动

mv b.txt /home/dir2

 

查看文件内容 cat

语法:

cat [选项 ] [ 文件]

 

功能:

查看文件内容(不能上下翻动(纯键盘))

常用选项:

选项 含义
-b 对非空行输出行号
-n 对所有行输出行号
-s 不输出空行

实例:

普通显示

cat test.c

 

显示行号

cat -n test.txt

 

显示文件内容 more

语法:

more [选项 ] [+-num] [ 文件]

 

功能:

与 cat 类似,但相比于 cat,more 可以做到上下翻动(纯键盘

常用选项:

选项 目录
-s 当遇到两行以上的空行,只打印一行
-num 一次显示 num 行
+num 从第 num 行开始显示

常用操作命令:

操作指令 含义
Enter 向下 n 行,需要定义,默认为 1
ctrl + F 向下滚动一屏
ctrl + B 向上滚动一屏
B 回退一页
q (quit) 退出 more
= 显示当前行号

实例:

显示文件内容

more test.txt

 

一次显示 10 行查看内容

more -10 test.txt

 

查看文件内容 less

语法:

less [选项 ] [ 文件]

 

功能:

less 与 more 类似,less 可以随意浏览文件,支持翻页和搜索,支持向上翻页和向下翻页(相比较 more 功能更强)

常用选项:

选项 含义
-i 忽略搜索时的大小写
-N 显示每行的行号
-s 多行空行只显示一行

常用操作命令:

操作指令 含义
/ 字符串 向上搜索“字符串”
? 字符串 向下搜索“字符串”
n 重复前一个搜索
N 反向重复前一个搜索
q (quit)退出 less
pagedown 向下翻动一页
pageup 向上翻动一页

实例:

less -N test.c

 

显示前 n 行 head

语法:

head [-n 数字 ] [ 文件]

 

功能:

显示文件前 n 行(默认 10 行)

实例:

head -n 10 test.c

 

显示后 n 行 tail

语法:

tail [-n 数字 ] [ 文件]

 

功能:

显示文件后 n 行(默认 10 行)

实例:

tail -n 10 test.c

 


总结

虽然这些操作看起来简单,但 务必要自己进行操作一遍,熟能生巧,当你重复使用多次,不用特意去记也能自然打出来,如果还没有配置 Linux 环境的可以看看这篇文章哦 ο(=•ω<=)ρ⌒☆Linux 环境搭建

本文转载自 CDSN

正文完
 
lucky
版权声明:本站原创文章,由 lucky 2022-07-04发表,共计3858字。
转载说明:转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)