Linux基础(2)基础命令与vim

news2024/11/24 19:30:41

文件的复制和移动

cp

拷贝文件和目录

cp file file_copy --> file 是目标文件,file_copy 是拷贝出来的文件
cp file one --> 把 file 文件拷贝到 one 目录下,并且文件名依然为 file
cp file one/file_copy --> 把 file 文件拷贝到 one 目录下,文件名为file_copy
cp *.txt folder --> 把当前目录下所有 txt 文件拷贝到 folder 目录下

-递归的拷贝,拷贝整个目录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

基本语法:

cp [选项] 源文件 目标文件

常用选项包括:
-r–recursive: 递归复制整个目录。
-p–preserve: 保留源文件的属性,包括文件权限、所有者、组、时间戳等。
-f–force: 强制复制,覆盖已存在的目标文件。
-i–interactive: 交互式复制,提示是否覆盖已存在的目标文件。
-v–verbose: 显示详细的复制过程。
-u–update: 仅复制源文件中较新的文件到目标目录。
-l–link: 创建硬链接而不是复制文件。
-s–symbolic-link: 创建符号链接而不是复制文件。
错误情况:
如果源文件不存在,则会显示错误信息并终止复制过程。
如果目标文件已存在且未使用 -f 或 -i 参数,则会显示错误信息并终止复制过程。
如果没有足够的权限进行复制操作,则会显示错误信息并终止复制过程。
注意事项:
1.当复制单个文件时,目标文件可以是一个已经存在的文件或者是一个新的文件名。如果目标文件已经存在,且没有使用 -f 或 -i 参数,那么复制操作将会被终止,并且不会覆盖目标文件。
2.当复制多个文件时,目标文件必须是一个目录。如果目标文件是一个已经存在的目录,那么源文件将会被复制到该目录中。如果目标文件不存在,那么会先创建该目录,然后将源文件复制到该目录中。
3.使用 -r 或 --recursive 参数可以递归复制整个目录及其子目录中的文件。如果不使用该参数,当源文件是一个目录时,cp命令将会报错。
4.使用 -p 或 --preserve 参数可以保留源文件的属性,包括文件权限、所有者、组、时间戳等。如果不使用该参数,复制的文件将会使用默认的属性。
5.使用 -f 或 --force 参数可以强制复制,即使目标文件已经存在。使用该参数时要小心,因为它会覆盖已存在的目标文件。
6.使用 -i 或 --interactive 参数可以进行交互式复制,即在复制过程中提示是否覆盖已存在的目标文件。
7.使用 -v 或 --verbose 参数可以显示详细的复制过程,包括复制的文件名和目标路径。
8.使用 -u 或 --update 参数可以仅复制源文件中较新的文件到目标目录。如果源文件和目标文件的时间戳相同,那么不会进行复制操作。
9.使用 -l 或 --link 参数可以创建硬链接而不是复制文件。硬链接是指多个文件共享同一份数据,如果其中一个文件被修改,其他文件也会受到影响。
10.使用 -s 或 --symbolic-link 参数可以创建符号链接而不是复制文件。符号链接是指一个文件指向另一个文件或目录的快捷方式。
11.在复制过程中,如果没有足够的权限进行复制操作,将会显示错误信息并终止复制过程。

mv

移动(重命名)文件或目录,与cp的用法相同

mv file one --> 将 file 文件移动到 one 目录下
mv new_folder one --> 将 new_folder 文件夹移动到one目录下
mv *.txt folder --> 把当前目录下所有 txt 文件移动到 folder 目录下
mv file new_file --> file 文件重命名为 new_file
  • -i 向用户确认是否删除;
  • -f 文件强制删除;
  • -r 递归删除文件夹,著名的删除操作 rm -rf 。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

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

-i: 交互式移动。在覆盖文件之前提示用户。
-u: 只在源文件比目标文件新,或当目标文件不存在时,才移动或重命名源文件。
-f: 强制移动,即使目标文件存在也不提示。
-b: 在覆盖目标文件之前进行备份。
**–backup[=CONTROL]:**控制备份,其中 CONTROL 可以是 none, off, numbered, t, existing, 或 nil。
-v: 详细模式,显示正在移动的文件的信息。
-n: 不覆盖已存在的文件。
–strip-trailing-slashes: 删除源文件名末尾的斜杠。
–update: 只在源文件和目标文件不同或目标文件不存在时,才进行移动。

用户权限

用户

Linux 是一个多用户的操作系统。在 Linux 中,理论上来说,我们可以创建无数个用户,但是这些用户是被划分到不同的群组里面的,有一个用户,名叫 root ,是一个很特殊的用户,它是超级用户,拥有最高权限。
自己创建的用户是有限权限的用户,这样大大提高了 Linux 系统的安全性,有效防止误操作或是病毒攻击,但是我们执行的某些命令需要更高权限时可以使用 sudo 命令。

sudo

以 root 身份运行命令

sudo ls/date --> 当然查看日期是不需要sudo的这里只是演示,sudo 完之后一般还需要输入用户密码的

在这里插入图片描述

在这里插入图片描述

useradd + passwd

useradd 添加新用户
passwd 修改用户密码
这两个命令需要 root 用户权限

useradd laowine --> 添加一个laowine用户,添加完之后在 /home 路径下可以查看
passwd laowine --> 修改laowine用户的密码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

su

切换用户,需要root权限

sudo su --> 切换为root用户(exit 命令或 CTRL + D 快捷键都可以使普通用户切换为 root 用户)
su laowine --> 切换为普通用户
su - --> 切换为root用户

在这里插入图片描述

vim

打开 Vim

在终端命令行中输入 vim 回车后 Vim 就会被运行起来,也可以用 Vim 来打开一个文件,只需要
在 vim 后面再加文件名。如 vim file.name ,如果文件不存在,那么会被创建。
在这里插入图片描述

插入

进入文件之后,此时处于交互模式,可以通过输入 i 进入插入模式。
在这里插入图片描述
在这里插入图片描述

移动

在 Vim 的交互模式下,我们可以在文本中移动光标。
h 向左移动一个字符
j 向下移动一个字符
k 向上移动一个字符
i 向右移动一个字符
当然也可以使用四个方向键进行移动,效果是一样的。

跳至行首和行末

行首:在交互模式下,为了将光标定位到一行的开始位置,只需要按下数字键 0 即可,键盘上的
Home 键也有相同效果。
行末:在交互模式下,为了将光标定位到一行的末尾,只需要按下美元符号键 $ 即可,键盘上的
End 键也有相同效果。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

按单词移动

在交互模式下,按字母键 w 可以一个单词一个单词的移动。

退出文件

在交互模式下,按下冒号键 : 进入命令模式,再按下 q 键,就可以退出了。
如果在退出之前又修改了文件,就直接想用 :q 退出 Vim ,那么 Vim 会显示一个红字标明错误信
息。此时我们有两个选择:
保存并退出 :wq 或 :x ;
不保存且退出 :q! 。
在这里插入图片描述
在这里插入图片描述

标准操作

删除字符

在交互模式下,将光标定位到一个你想要删除的字符上,按下字母键 x 你会发现这个字符被删除
了。
也可以一次性删除多个字符,只需要在按 x 键之前输入数字即可。
在这里插入图片描述
在这里插入图片描述

删除(剪切)单词,行

删除一行:连按两次 d 来删除光标所在的那一行。
删除多行:例如先输入数字 2 ,再按下 dd ,就会删除从光标所在行开始的两行。
删除一个单词:将光标置于一个单词的首字母处,然后按下 dw 。
删除多个单词:例如先按数字键 2 再按 dw 就可以删除两个单词了。
从光标所在位置删除至行首: d0 。
从光标所在位置删除至行末: d$ 。

复制单词,行

复制行:按两次 y 会把光标所在行复制到内存中,和 dd 类似, dd 用于“剪切”光标所在行。
复制单词: yw 会复制一个单词。
复制到行末: y$ 是复制从光标所在处到行末的所有字符。
复制到行首: y0 是复制光标所在处到行首的所有字符。
在这里插入图片描述

粘贴

如果之前用 dd 或者 yy 剪切复制过来的,可以使用 p 来粘贴。同样也可以使用 数字+p 来表示复制多次。

替换一个字符

在交互模式下,将光标置于想要替换的字符上。按下 r 键,接着输入你要替换的字符即可。
在这里插入图片描述
在这里插入图片描述

撤销操作

如果要撤销最近的修改,只需要按下 u 键,如果想要撤销最近四次修改,可以按下4,再按下u 。
在这里插入图片描述

重做

取消撤销,也就是重做之前的修改使用 ctrl + r 。

跳转到指定行

Vim 编辑的文件中,每一行都有一个行号,行号从1开始,逐一递增。
行号默认是不显示,如果需要它显示的话,可以进入命令模式,然后输入 set nu ,如果要隐藏行
号的话,使用 set nonu 。
跳转到指定行: 数字+gg ,例如 7gg ,表示跳转到第7行。
要跳转到最后一行,按下 G 。
要跳转到第一行,按下 gg 。

高级操作

查找

处于交互模式下,按下 / 键,那么就进入查找模式,输入你要查找的字符串,然后按下回车。光
标就会跳转到文件中下一个查找到的匹配处。如果字符串不存在,那么会显示 “pattern not found” 。
n 跳转到下一个匹配项;
N 跳转到上一个匹配项。
注意: 用斜杠来进行的查找是从当前光标处开始向文件尾搜索,如果你要从当前光标处开始,向
文件头搜索则使用 ? ,当然也可以先按下 gg 跳转到第一行在进行全文搜索。
在这里插入图片描述

vim 设置行号与去除行号

设置行号:set num
在这里插入图片描述

去除行号:set num!
在这里插入图片描述

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

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

相关文章

vue input 限制输入,小数点后保留两位 以及 图片垂直居中显示 和 分享 git 小技巧

&#xff08;1&#xff09;input 限制输入&#xff0c;小数点后保留两位 <template><div><el-input v-model"number" input"checkNumber" blur"completeNumber" placeholder"请输入"></el-input></div>…

军事地图管理系统|DW-S403实现军用地图科学管理

军用地图管理系统DW-S403系统通过数据采集、物联网技术&#xff0c;实现数字化智能管控&#xff0c;以提高军用物资的地图的科学化管理&#xff0c;也有助于消除生产过程中的不确定性。 军用地图是反映实际地形的最可靠的资料&#xff0c;是指挥员的"左膀右臂"。在作…

[Algorithm][动态规划][二维费用的背包问题][一和零][盈利计划]详细讲解

目录 0.原理讲解1.一和零1.题目链接2.算法原理详解3.代码实现 2.盈利计划1.题目链接2.算法原理详解3.代码实现 0.原理讲解 本质仍然是背包问题&#xff0c;但是相较于普通的背包问题&#xff0c;只是限制条件多了一个而已 1.一和零 1.题目链接 一和零 2.算法原理详解 思路&…

03-3.5.1~4 特殊矩阵的压缩存储

&#x1f44b; Hi, I’m Beast Cheng&#x1f440; I’m interested in photography, hiking, landscape…&#x1f331; I’m currently learning python, javascript, kotlin…&#x1f4eb; How to reach me --> 458290771qq.com 喜欢《数据结构》部分笔记的小伙伴可以订…

vue elementui 自定义loading显示的icon 文本 背景颜色

<div v-loading"modalLoading"element-loading-text"拼命加载中"element-loading-spinner"el-icon-loading"element-loading-background"rgba(0, 0, 0, 0.8)" class"loading-box" v-if"modalLoading"></…

由于人工智能,他们的语言更容易理解

密歇根大学、墨西哥国家天体物理研究所和光学与电子研究所的研究人员正在使用人工智能模型来破译狗的语言。 在国际会议上提出的新研究展示了先进的人工智能 模型如何帮助人类了解动物。 密歇根大学人工智能实验室主任 Rada Mihalcea 强调了这项研究的重要性&#xff1a;对于…

初出茅庐的小李博客之CJSON库解析心知天气数据

心知天气数据JSON格式介绍 JSON格式介绍http://t.csdnimg.cn/pJX1n 下面代码是利用CJSON库进行数据解析 解析代码 #include <stdio.h> #include <string.h> #include "cJSON.h" // 假设你的CJSON库头文件路径是正确的int main(void) {// 提供的JSON…

微软如何打造数字零售力航母系列科普13 - Prime Focus Technologies在NAB 2024上推出CLEAR®对话人工智能联合试点

Prime Focus Technologies在NAB 2024上推出CLEAR对话人工智能联合试点 彻底改变您与内容的互动方式&#xff0c;从内容的创建到分发 洛杉矶&#xff0c;2024年4月9日/PRNewswire/-媒体和娱乐&#xff08;M&E&#xff09;行业人工智能技术解决方案的先驱Prime Focus Techn…

23种设计模式之代理模式

代理模式 1、概念 代理模式&#xff1a;给某一个对象提供一个代理或占位符&#xff0c;并由代理对象来控制对原对象的访问 代理模式是常用的结构型设计模式之一&#xff0c;在Java RMI、Web Service、Spring AOP等技术和框架中都使用了代理模式 2、代理模式结构 Subject&a…

[工具探索]英寸vs毫米下常见尺寸排版

文章目录 常见尺寸1. 照片尺寸2. 纸张尺寸3. 显示器和电视屏幕尺寸4. 手机屏幕尺寸5. 笔记本电脑屏幕尺寸6. 其他设备尺寸 换算公式换算方法常见照片尺寸对比表国际标准ISO&#xff08;216&#xff09;纸张尺寸 什么是英寸&#xff1f; 英寸&#xff08;英语&#xff1a;inch&a…

R语言统计分析——图形参数

参考资料&#xff1a;R语言实战【第2版】 我们可以通过修改图形参数来自定义一幅图形的多个特征&#xff08;字体、颜色、坐标轴、标签&#xff09;。一种方法是通过函数par()来指定这些参数&#xff0c;以这种方式设定的参数除非被再次修改&#xff0c;否则将会在会话结束前一…

webshell三巨头 综合分析(蚁剑,冰蝎,哥斯拉)

考点: 蚁剑,冰蝎,哥斯拉流量解密 存在3个shell 过滤器 http.request.full_uri contains "shell1.php" or http.response_for.uri contains "shell1.php" POST请求存在明文传输 ant 一般蚁剑执行命令 用垃圾字符在最开头填充 去掉垃圾字符直到可以正常bas…

网页五子棋对战项目测试(selenium+Junit5)

目录 网页五子棋对战项目介绍 网页五子棋对战测试的思维导图​ 网页五子棋对战的UI自动化测试 测试一&#xff1a;测试注册界面 测试二&#xff1a;测试登陆界面 测试三&#xff1a;测试游戏大厅界面 测试四&#xff1a;测试游戏房间界面以及观战房间界面 测试五&#…

对yoloV8进行标签过滤来实现行人检测

前言 上一章我们介绍的通过迁移学习&#xff0c;在新的行人数据集上使用已经学习到的特征和权重&#xff0c;从而更快地实现行人检测任务。模型就会调整其参数以适应新的数据集&#xff0c;以提高对行人的识别性能。接下来介绍一种更快更便捷的方法&#xff0c;依旧是基于yolo…

探寻性能优化:如何衡量?如何决策?

目录 一、衡量指标说明 &#xff08;一&#xff09;响应时间&#xff08;Response Time&#xff09; 平均响应时间&#xff08;Average Response Time&#xff09; 百分位数响应时间&#xff08;Percentile Response Time&#xff09; &#xff08;二&#xff09;吞吐量&a…

bugku--web---baby lfi

1、题目描述 2、页面提示使用language参数 3、构造url:/?languagefr。页面有回显 4、这里提示包含关键的文件 5、构造url:/?language/etc/passwd 6、flag shellmates{10CA1_F11e_1Nc1US10n_m4y_r3ve4l_in7Er3st1nG_iNf0Rm4t1on}

2024.6.11

思维导图 代码 #include <iostream>using namespace std;//封装一个 讲解员 类 class Animal { public:Animal(){}virtual void perform(){cout << " " << endl;} };//封装一个 狮子 类 class Lion:public Animal { public:Lion(){}void pe…

BT音频方案

一、缩写 缩写 全程 释义 I2S I2S 音频传输接口总线 PCM Pulse-Code Modulation 基础音频数据或翻译为音频接口总线 HFP Handsfree 蓝牙通话协议 A2DP Advanced Audio Distribution Profile 蓝牙媒体音频协议 二、音频流转策略 蓝牙音频功能分为通话声音和媒体…

【Java】 如何设计RPC框架在10万QPS下实现毫秒级的服务调用?

一、问题解析 来思考这样一个场景&#xff1a;你的垂直电商系统的 QPS 已经达到了每秒 2 万次&#xff0c;在做了服务化拆分之后&#xff0c;由于我们把业务逻辑都拆分到了单独部署的服务中&#xff0c;那么假设你在完成一次完整的请求时需要调用 4&#xff5e;5 次服务&#…

温泉镇旅游微信小程序的设计与实现(论文+源码)_kaic

摘要 旅游业随着经济的快速发展呈现出一派欣欣向荣的景象&#xff0c;尤其是近两年来&#xff0c;各个行业运用科技以及因特网来促进旅游迅速发展&#xff0c;逐渐都显示出了的问题&#xff0c;特别突出的是在线上推广&#xff0c;其缺点也是特别明显。尽管在新冠肺炎的冲击下&…