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

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删除该隐藏临时文件

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++中的模板

模板概论 c提供了函数模板 (function template.) 所谓函数模板&#xff0c;实际上是建立一个通用函 数&#xff0c;其函数类型和形参类型不具体制定&#xff0c;用一个虚拟的类型来代表。这个通用函数 就成为函数模板。凡是函数体相同的函数都可以用这个模板代替&#xff0c;不…

人工智能_AI服务器安装清华开源_CHATGLM大语言模型_GLM-6B安装部署_人工智能工作笔记0092

看到的这个开源的大模型,很牛,~关键让我们自己也可以部署体验一把了,虽然不知道具体内部怎么构造的但是,也可以自己使用也挺好. 可以部署在自己的机器上也可以部署在云服务器上. 安装以后,是可以使用python代码进行提问,然后返回结果的,这样就可以实现我们自己的chat应用了, …

TiDB 在咪咕云原生场景下的实践

导读 咪咕是中国移动旗下的视频科技公司&#xff0c;门户系统是其核心业务之一。 为满足用户的多样化需求&#xff0c;咪咕计划对其数据库进行升级。 经过对中国主流国产数据库的测试评估后&#xff0c;咪咕选择了 TiDB&#xff0c;并成功将其落地于门户系统云化项目。 TiDB 为…

太阳能监控智慧杆供电系统

太阳能监控智慧杆系统工作时无需水、油、汽、燃料&#xff0c;只要有光就能发电的特点&#xff0c;是清洁、无污染的可再生能源&#xff0c;而且安装维护简单&#xff0c;使用寿命长&#xff0c;可以实现无人值守&#xff0c;倍受人们的青睐&#xff0c;是新能源的领头羊。近年…

【封装UI组件库系列】封装Button图标组件

封装UI组件库系列第四篇封装Button按钮组件 &#x1f31f;前言 &#x1f31f;封装Button组件 1.分析封装组件所需支持的属性与事件 支持的属性&#xff1a; 支持的事件&#xff1a; 2.创建Button组件 &#x1f31f;封装功能属性 type主题颜色 plain是否朴素 loading等…

鸿蒙开发学习——应用程序框架

文章目录 UIAbility的生命周期Create状态WindowStageCreateForeground和Background前后台展示控制onWindowStageDestroyDestory 总结 UIAbility的生命周期 感觉这里他讲的不清晰&#xff0c;UIAbility的4个声明周期是Create、Foreground&#xff08;桌面展示&#xff09;、Back…

kali linux nmap 端口扫描 简单教程

本次实验所用工具如下&#xff1a; VMwarekali linux (namp扫描工具)Windows sever 2016 需开启&#xff08;FTP&#xff0c;smp&#xff0c;Telnet&#xff0c;rdp&#xff09;端口namp操作所用部分代码&#xff1a; -sP ping 扫描 -P 指定端口范围 -sV 服务版本探测 -A …

【UE】绘制抛物线并投射物体

效果 步骤 1. 先新建父类为Actor的蓝图&#xff0c;这里命名为“BP_发射物” 打开“BP_发射物”&#xff0c;添加一个球形的静态网格体和一个发射物移动组件 2. 新建一个父类为角色的蓝图&#xff0c;这里命名为“BP_绘制抛物线” 打开“BP_绘制抛物线” 我们希望可以通过控制…

2023.11.28-电商平台建设03 - 大数据调优手段

1.优化手段 1.1分桶表 HIVE的分桶本质上就是MR的分区操作 建表语句: create table 表名(字段 类型,.... ) clustered by(分桶字段) [sorted by (字段 [asc | desc])] into N buckets --- 定义分桶表核心语句 row format...... 分桶的作用 1) 进行数据采样工作 1.1) …

【古月居《ros入门21讲》学习笔记】14_参数的使用与编程方法

目录 说明&#xff1a; 1. 参数模型&#xff08;全局字典&#xff09; 2. 实现过程&#xff08;C&#xff09; 创建功能包 参数命令行的使用 YAML参数文件 rosparam命令 使用示例 编程方法&#xff08;C&#xff09; 配置代码编译规则 编译并运行 编译 运行 3. 实…

五丶openlayer之LOD和分辨率

LOD是Levels of Detail的简写&#xff0c;用于根据当前的环境&#xff0c;渲染不同的图像&#xff0c;用于降低非重要的细节度&#xff0c;从而提高渲染效率&#xff0c;在电子游戏中经常运用&#xff0c;对于需要显示全球地图的GIS系统而言&#xff0c;更需要应用这项技术。 …

Docker+Anaconda+CUDA+cuDNN

一、导语 因为要复现文献的需求和实验室里师兄想要给我提升能力的多方面因素在一起&#xff0c;所以学习并实现了相关安装。在这里做一个记录&#xff0c;方便日后查看&#xff0c;如果能给其他同学带来便捷就更好了。 在这篇文章中&#xff0c;我的目标是搭建一个可以使用Py…

VSCode Vue 开发环境配置

Vue是前端开发中的重要工具与框架&#xff0c;可以保住开发者高效构建用户界面。 Vue2官方文档&#xff1a;https://v2.cn.vuejs.org/ Vue3官方文档&#xff1a;https://cn.vuejs.org/ Vue的安装和引用 Vue2的官方安装指南&#xff1a;https://v2.cn.vuejs.org/v2/guide/ins…

github新建项目

参考链接&#xff1a;Github上建立新项目超详细方法过程 在这里新建一个repositories 接下来就选择相关的信息&#xff1a; 然后create a new就行了 接下来需要创建文件&#xff1a;&#xff08;同时通过upload上传文件&#xff09; 每次最多上传100个文件&#xff0c;然后保…

WEB渗透—反序列化(八)

Web渗透—反序列化 课程学习分享&#xff08;课程非本人制作&#xff0c;仅提供学习分享&#xff09; 靶场下载地址&#xff1a;GitHub - mcc0624/php_ser_Class: php反序列化靶场课程&#xff0c;基于课程制作的靶场 课程地址&#xff1a;PHP反序列化漏洞学习_哔哩哔_…

11.27二叉查找树,遍历二叉树,层序(判断是不是完全二叉树),根据遍历序列重构二叉树,递归输入建树(树的定义,结构体细节,typedef)

如果left<right&#xff0c;就表明其之间还有元素&#xff0c;即左右指针重合&#xff0c;区间只有一个元素也被包含其中&#xff1b; left<right,就表明递归过程中&#xff0c;只允许区间有两个及以上的元素&#xff0c;不允许区间只有一个元素&#xff0c;那么对应地&…

【前端】浅谈async/await异步传染性

文章目录 概述观点无法解决可以解决 来源 概述 "异步传染性"问题通常是指&#xff0c;当一个函数使用了async和await&#xff0c;其调用者也需要使用async和await处理异步操作&#xff0c;导致整个调用链都变成异步的。这种情况可能导致代码变得更复杂&#xff0c;不…

基于若依的ruoyi-nbcio流程管理系统增加流程节点配置(三)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 这一节主要是对每个流程节点的字段规则设置与操作规则设置&#xff0c;目前也是只针对自定义业务表单。 1、…

基于SSM的社区团购系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

python基于YOLOv8全系列模型【n/s/m/l/x】开发构建不同参数量级的钢铁产业产品智能自动化检测识别系统

在前文的项目开发实践中&#xff0c;我们已经以钢铁产业产品缺陷检测数据场景为基准&#xff0c;陆续开发构建了多款目标检测模型&#xff0c;感兴趣的话可以自行阅读即可。 《YOLOv3老矣尚能战否&#xff1f;基于YOLOv3开发构建建钢铁产业产品智能自动化检测识别系统&#xf…