linux文件管理命令_切换创建复制移动删除查看修改

news2024/11/26 0:26:43

1.3 文件管理命令

1.3.1 cd:切换目录(change directory)
cd  绝对路径/相对路径
# 根目录
[root@localhost ~]# cd /
# 家目录
[root@localhost /]# cd
[root@localhost /]# cd ~
# 父级目录
[root@localhost /]# cd ..
# 返回上一次目录
[root@localhost /]# cd -

绝对路径:

[root@localhost ~]# cd /etc/opt/

相对路径:

[root@localhost ~]# cd Public/

1.3.2 ls:可以列出当前目录的内容或指定目录(list)

常见选项:

  • -a包含隐藏文件

  • -l显示额外信息

  • -R目录递归

  • -ld目录和符号链接信息

  • -S按从大到小排序

1.3.3 touch:创建文件

touch 路径和名字

[root@localhost ~]# touch /root/data/file

1.3.4 mkdir:创建文件夹

mkdir 路径和目录名

[root@localhost ~]# mkdir /root/data

常见选项:

  • -p当创建目录没有上一级时,自动创建

例:在/home下创建a1文件夹,在a1文件夹中,直接创建b1/c1文件夹,最终文件层级结构为/home/a1/b1/c1

[root@localhost ~]# mkdir -p /home/a/b/c

1.3.5 cp:复制

是英文单词 copy 的缩写,用于复制文件和目录。它是一个常用且功能强大的命令,可以帮助我们在文件系统中创建副本或者说备份文件。

cp 命令的语法如下:

cp    源文件    目标文件夹
cp    源文件    目标文件
cp    -t     目标文件夹    源文件

例:将c中的文件d复制到a中

[root@localhost ~]# cp /home/a/b/c/d  /home/a/

练习1:将d1复制到桌面

常见选项:

练习2:将a文件夹下面的所有文件复制到桌面

  • -r/-R:递归复制目录及内部的所有内容

[root@localhost ~]# cp -r  /home/a /root/Desktop/
  • -f:强制覆盖文件,如果目标位置已经存在同名文件,cp 命令默认会询问是否覆盖。可以使用 -f 选项来强制覆盖目标文件而不进行询问。

    cp -f boat.ini /opt/games/gta6/model/objs/boat2.ini
    # centos7无反应

1.3.6 mv:移动
move 的缩写,可以移动文件或目录,将其从一个位置移到另一个位置。当然,它还能给文件或目录重命名。

mv命令的基本语法如下:

mv   源文件或目录  目标文件或目标

例:

将/root/data/a/b/c文件夹中的文件file1移动到/root/data/a中

将/root/data/a/b中的文件c及其包含的文件、文件夹移动到/root/data/a中

将/root/data/a/b中的文件c及其包含的文件、文件夹移动到/root/data/a中,并将其文件夹改名为cc

[root@centos-1 ~]# mv /root/data/a/b/c/file1 /root/data/a/
[root@centos-1 ~]# mv /root/data/a/b/c /root/data/a/
[root@centos-1 ~]# mv /root/data/a/b/c /root/data/a/cc

例:

重命名文件/root/data/a/file1为file2

重命名文件夹/root/data/a/c为d

[root@centos-1 ~]# mv /root/data/a/file1 /root/data/a/file2
[root@centos-1 ~]# mv /root/data/a/c /root/data/a/d

常见选项参数:

  • -i:覆盖目标文件前询问用户是否确认。

  • -f:强制执行移动或重命名操作,当发生覆盖时是不进行确认提示,就不会询问是否覆盖,简而言之,强制覆盖。

  • -u:当源文件比目标文件的创建时间更加新时,才执行覆盖操作

1.3.7 rm:删除
remove的所需,用于删除一个文件或者目录。

rm命令的基本语法如下:

rm  文件名/目录名

常见选项参数

  • -i删除前逐一询问确认。

  • -f即使原档案属性设为唯读,亦直接删除,无需逐一确认。

  • -r将目录及以下之档案亦逐一删除。

例:

删除文件/root/data/a/file2

删除文件夹/root/data/a/cc

[root@centos-1 data]# rm /root/data/a/file1
​
# 删除目录必须添加-r或-rf
[root@centos-1 data]# rm -r /root/data/a/cc/

删除当前目录下的所有文件及目录

rm  -r  * 

注意:文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令。(centos7以上版本有些可以留在回收站)

1.3.8 查看文件内容

vim的安装:

yum install -y vim

1.3.8.1 cat
操作系统中常用的一种文本文件查看和处理命令,它的主要作用是连接文件并且将它们输出到标准输出设备(通常是屏幕)。

cat命令的基本语法如下:

cat [选项]    文件名

常见选项参数

  • -n :显示每行行号;

  • -b:显示非空行行号;

  • -s:压缩空白行为一行;

  • -v:显示制表符和非打印字符;

  • -E:在每行结束处显示$符号。

例:

# cat /etc/profile
# cat -n /etc/profile
# cat -nb /etc/profile

1.3.8.2 more:翻页
more命令用于逐页显示文件内容,通常用于查看大型文件的内容,可以一次显示一页,按下空格键显示下一页,按下回车键显示下一行,按下Q键退出查看。

more命令的基本语法如下:

more    [选项]    文件名

常见选项参数

  • +n:从笫n行开始显示。

  • -n:定义屏幕大小为n行。

  • +/pattern:在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示

  • -c:从顶部清屏,然后显示。

  • -d:提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能。

  • -l:忽略Ctrl+l(换页)字符。

  • -p:通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似

  • -s:把连续的多个空行显示为一行。

  • -u:把文件内容中的下画线去掉。

常用操作命令:

  • Enter:向下n行,需要定义。默认为1行。

  • Ctrl+F:向下滚动一屏。

  • 空格键:向下滚动一屏。

  • Ctrl+B:返回上一屏。

  • =:输出当前行的行号。

  • f:输出文件名和当前行的行号。

  • V:调用vi编辑器。

  • !命令:调用Shell,并执行命令 。

  • q:退出more。

例:

显示文件中从第3行起的内容。

more +3 /etc/profile

设定每屏显示行数。

more -3 /etc/profile

列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。

ls /etc | more -5

1.3.8.3 head:头部
用于查看文件的开头部分的内容,有一个常用的参数 -n 用于显示行数,默认为 10,即显示 10 行的内容。

head命令的基本语法如下:

head    [参数]    文件名

常见选项参数

  • -q 隐藏文件名

  • -v显示文件名

  • -c<数目> 显示的字节数。

  • -n<行数> 显示的行数。

例:

显示 /etc/profile 文件的开头 10 行

head /etc/profile   或
head -n 10 /etc/profile

显示 /etc/profile 文件的开头 5 行

head -n 5 /etc/profile

显示 /etc/profile 文件的前20个字节

hed -c 20 /etc/profile

1.3.8.4 tail:尾部

用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。

tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。

tail命令的基本语法如下:

tail    [参数]    文件名

常见选项参数

  • -f循环读取

  • -q不显示处理信息

  • -v 显示详细的处理信息

  • -c<数目> 显示的字节数

  • -n<行数> 显示文件的尾部 n 行内容

  • --pid=PID与-f合用,表示在进程ID,PID死掉之后结束

  • -q, --quiet, --silent 从不输出给出文件名的首部

  • -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒

例:

显示 /etc/profile 文件的最后 10 行

tail /etc/profile

要跟踪名为 /var/log/messages 的文件的增长情况

tail -f /var/log/messages

显示文件 /etc/profile 的内容,从第 20 行至文件末尾

tail -n +20 /etc/profile

显示文件 /etc/profile 的最后 10 个字符

tail -c 10 /etc/profile
1.3.8.5 grep:文本过滤

1.3.9 修改文件内容
1.3.9.1 重定向
ls -a > list.txt

1.3.9.2 gedit

图形文件编辑器

1.3.9.3 vi/vim
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
​
但是目前我们使用比较多的是 vim 编辑器。
​
vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

什么是vim?

Vim 是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
​
简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。

vi/vim的使用

基本上 vi/vim 共分为三种模式,命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)。

1)命令模式:用户刚刚启动vi/vim,便进入了命令模式

此状态下敲击键盘动作会被 Vim 识别为命令,而非输入字符,比如我们此时按下 i,并不会输入一个字符,i被当作了一个命令。

以下是普通模式常用的几个命令:

  • i-- 切换到输入模式,在光标当前位置开始输入文本。

  • x-- 删除当前光标所在处的字符。

  • : -- 切换到底线命令模式,以在最底一行输入命令。

  • a -- 进入插入模式,在光标下一个位置开始输入文本。

  • o:在当前行的下方插入一个新行,并进入插入模式。

  • O -- 在当前行的上方插入一个新行,并进入插入模式。

  • dd -- 删除当前行。ndd

  • yy -- 复制当前行。nyy

  • p -- 粘贴剪贴板内容到光标下方。

  • P -- 粘贴剪贴板内容到光标上方。

  • u -- 撤销上一次操作。

  • Ctrl + r-- 重做上一次撤销的操作。

  • :w -- 保存文件。

  • :q-- 退出 Vim 编辑器。

  • q! -- 强制退出Vim 编辑器,不保存

  • hjkl--上下左右

  • 0 $--行首行尾

  • gg G--页首页尾

  • 3G--进入第三行

  • v--进入可视化模式

2)输入模式

在命令模式下按下 i 就进入了输入模式,使用 Esc 键可以返回到普通模式。在命令模式下按下 i 就进入了输入模式,使用 Esc 键可以返回到普通模式。

在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符

  • ENTER,回车键,换行

  • BACK SPACE,退格键,删除光标前一个字符

  • DEL,删除键,删除光标后一个字符

  • 方向键,在文本中移动光标

  • HOME/END,移动光标到行首/行尾

  • Page Up/Page Down,上/下翻页

  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线

  • ESC,退出输入模式,切换到命令模式

3)底线命令模式

在命令模式下按下 :(英文冒号)就进入了底线命令模式。
​
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。

在底线命令模式中,基本的命令有(已经省略了冒号):

  • :w:保存文件。

  • :q:退出 Vim 编辑器。

  • :wq:保存文件并退出 Vim 编辑器。

  • :q!:强制退出Vim编辑器,不保存修改。

  • :set nu:显示行号

  • :set list:显示控制字符

  • :set nonu:取消显示行号

  • /string:查找字符,安n选下一个

  • 范围 s/原内容/新内容/全局:查找替换,例:1,5 s/root/yu/g

按 ESC 键可随时退出底线命令模式。

简单的说,我们可以将这三个模式想成底下的图标来表示:

img

1.3.9.4 临时文件删除

因异常退出vim,导致相同路径下有.(源文件名).swap临时文件被系统生成,打开源文件如下图所示(无法编辑):

解决方法:

  1. 使用ls -a,找到.(源文件名).swap

  2. 使用rm删除该隐藏临时文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1265066.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【vue】v-model在表单元素上的应用

表单元素&#xff1a; https://blog.csdn.net/m0_67930426/article/details/134655644 使用模板 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head><body>&l…

订单管理系统怎么用?有哪些好用的订单管理系统?

订单管理系统怎么用&#xff1f;有哪些好用的订单管理系统&#xff1f;阅读本文你将了解&#xff1a;1、订单管理系统的核心功能&#xff1b;2、订单管理系统的拓展功能&#xff1b;3、订单管理系统推荐。 订单管理系统在当今商业环境中扮演着至关重要的角色。它是企业内部运营…

Flink-执行拓扑图与作业调度

算子与作业提交 一、Flink执行模式1.流执行模式2.批执行模式 二、Flink拓扑图1.基本概念2.拓扑图生成过程 三、拓扑生成和优化1.应用程序2.逻辑视图3.算子链4.Task Slots 四、作业调度1.调度2.拓扑图数据结构3.Job状态转化4.Task状态转化 总结参考链接 一、Flink执行模式 Flin…

文章解读与仿真程序复现思路——电力系统保护与控制EI\CSCD\北大核心《基于深度强化学习的城市配电网多级动态重构优化运行方法》

这个标题涉及到城市配电网&#xff08;Urban Power Distribution Network&#xff09;的优化运行方法&#xff0c;其中使用了深度强化学习&#xff08;Deep Reinforcement Learning&#xff09;技术&#xff0c;并且特别强调了多级动态重构。 解读每个关键部分&#xff1a; 基…

Docker 概述与安装

文章目录 1. Docker简介2. 传统虚拟机和容器3. Docker运行速度快的原因4. Docker软件4.1 Docker镜像4.2 Docker容器4.3 Docker仓库 5. Docker架构6. CentOS安装Docker6.1 卸载旧版本6.2 配置yum资源库6.3 安装Docker引擎6.4 启动docker引擎6.5 设置开机自启 7. 卸载Docker8. 运…

【C++初阶】五、类和对象(日期类的完善、流运算符重载函数、const成员、“”取地址运算符重载)

相关代码gitee自取&#xff1a; C语言学习日记: 加油努力 (gitee.com) 接上期&#xff1a; 【C初阶】四、类和对象 &#xff08;构造函数、析构函数、拷贝构造函数、赋值运算符重载函数&#xff09;-CSDN博客 一 . 日期类的完善 此次日期类的成员函数&#xff0c;采用声明…

Flink Flink中的合流

一、Flink中的基本合流操作 在实际应用中&#xff0c;我们经常会遇到来源不同的多条流&#xff0c;需要将它们的数据进行联合处理。所以 Flink 中合流的操作会更加普遍&#xff0c;对应的 API 也更加丰富。 二、联合&#xff08;Union&#xff09; 最简单的合流操作&#xf…

EZDML基本介绍

一、表结构设计器(EZDML) 这是一个数据库建表的小软件&#xff0c;可快速的进行数据库表结构设计&#xff0c;建立数据模型。类似大家常用的数据库建模工具如PowerDesigner、ERWIN、ER-Studio和Rational-Rose等的超级精简版。 官方下载地址&#xff1a;http://www.ezdml.com/d…

解析javascript数组方法 find 和 filter 有何区别

首先用一个案例可以很直观的看到 find 和 filter 的区别&#xff1b; 相同点&#xff1a; 两者分别可以接受三个参数&#xff1a;当前元素、当前索引、整个数组&#xff1b;两者都可以用来查找数组中符合条件的元素&#xff1b; 不同点&#xff1a; find&#xff1a; 用于查…

docker镜像管理命令

镜像管理命令 docker build : 命令用于使用 Dockerfile 创建镜像 docker build [OPTIONS] PATH | URL | - OPTIONS说明&#xff1a; --add-host :向hosts文件中添加自定义 host:ip 映射 --build-arg[] :设置镜像创建时的变量&#xff1b; --cache-from :指定镜像用作当前构建…

华为ospf和isis双点双向路由重分布的次优路径和环路终极解决方案

r5上直接导入直连路由 r3和r2进行双点双向路由重分布 查看R3去往R5产生了次优路径&#xff1a; 因为是R2先互相引入的isis和ospf&#xff0c;所以R3会产生次优路径&#xff0c;如果是R3先相互引入ospf和isis&#xff0c;那就是R2去R5会产生次优路径&#xff0c;而R3本身不会。…

华为设备使用python实现文件自动保存下载

实验目的&#xff1a; 公司有一台CE12800的设备&#xff0c;管理地址为172.16.1.2&#xff0c;现在需要编写自动化脚本&#xff0c;STELNET实现设备的自动保存配置文件&#xff0c;使用SFTP实现设备的文件下载。 实验拓扑&#xff1a; 实验步骤&#xff1a; 步骤1&#xff1…

Spark---资源、任务调度

一、Spark资源调度源码 1、Spark资源调度源码过程 Spark资源调度源码是在Driver启动之后注册Application完成后开始的。Spark资源调度主要就是Spark集群如何给当前提交的Spark application在Worker资源节点上划分资源。Spark资源调度源码在Master.scala类中的schedule()中进行…

揭开 BFC 的神秘面纱:前端开发必知必会

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

【多线程】-- 05 Lambda表达式

多线程 4 Lambda表达式 λ是希腊字母表中排序第十一位的字母&#xff0c;英语名称为Lambda是为了避免匿名内部类定义过多实质属于函数式编程的概念 为什么要使用Lambda表达式&#xff1f; 避免匿名内部类定义过多可以让代码看起来很简洁去掉了一堆没有意义的代码&#xff0…

【LeetCode】128. 最长连续序列——哈希的应用(3)

文章目录 1、思路2、解题方法3、复杂度时间复杂度:空间复杂度: 4、Code Problem: 128. 最长连续序列 1、思路 我会用一种做题者的思路来去看待这道题。 我们在乍一看到这道题的时候&#xff0c;看到它的时间复杂度要求为O(N)&#xff0c;然后又要求去找序列(就是让你判断这个…

高频Latex公式速查表,写论文技术博客不愁了

常见上下标X_{2}X^{2}\hat{X}\bar{X}\frac{1}{X}常见希腊字母\alpha \beta \gamma \delta \varepsilon \eta \theta \rho \sigma \phi \varphi \omega常见数学符号\leq \geq \neq\approx 其他\sum \prod \int \bigoplus \forall \exists \times \setminus \bigotimes \bigodot …

五分钟 k8s 实战-应用探针

Probe.png 今天进入 kubernetes 的运维部分&#xff08;并不是运维 kubernetes&#xff0c;而是运维应用&#xff09;&#xff0c;其实日常我们大部分使用 kubernetes 的功能就是以往运维的工作&#xff0c;现在云原生将运维和研发关系变得更紧密了。 今天主要讲解 Probe 探针相…

集成IDE开发环境,Java开发工具IntelliJ IDEA 2023中文

IntelliJ IDEA 2023是一款功能强大的软件&#xff0c;其为程序员提供了一款先进的集成开发环境。它以智能、高效和人性化为主要特点&#xff0c;致力于提高开发人员的生产力&#xff0c;帮助程序员更快、更好地编写代码。IntelliJ IDEA 2023支持多种语言和框架&#xff0c;包括…

iOS 通用链接的配置(Universal Links)

一、打开Associated Domains 1.首先登录 苹果开发者网站 2.Certificates, Identifiers & Profiles 下的Identifiers 找到要配追的Identifiers 点进去 3.打开Associated Domains然后保存 二、更新Profile文件 如果我们使用自动的&#xff0c;可以忽略这一步&#xff0c;…