Linux权限和开发工具(1)

news2024/11/25 12:03:56

在这里插入图片描述

文章目录

  • 1.Linux根目录的相关文件夹
  • 2.Linux软件管理器yum
  • 3.Linux编辑器-vim的基础使用
    • 1.命令模式下一些命令:
      • 有关光标的操作:
      • 有关复制删除的操作:
      • 有关字符替换的相关操作:
      • 有关注释的相关操作:
    • 2.插入模式
    • 3.底行模式下一些命令:
      • 实现双窗口
    • 4.vim命令
  • 4.vim配置
  • 5.Linux编译器-gcc/g++使用
    • 基本使用方法:

1.Linux根目录的相关文件夹

  1. bin 指令相关
  2. boot 启动相关的操作系统,配置文件
  3. dev 识别到的设备(键盘,显示器等)
  4. etc为启动后的配置文件
  5. home 用户的相关账号
  6. lib 动态库
  7. media 媒体设备(U盘)
  8. proc 进程相关
  9. var 日志
  10. tmp 各种临时文件

2.Linux软件管理器yum

  • 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.

  • 但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成软件包(可以理解成windows上的安 装程序)放在一个服务器上, 通过包管理器可以很方便的获取到这个编译好的软件包, 直接进行安装. 软件包和软件包管理器,

  • 就好比 “App” 和 “应用商店” 这样的关系.

  • yum(Yellow dog Updater, Modified)是Linux下非常常用的一种包管理器. 主要应用在Fedora, RedHat, Centos等发行版上.

Linux安装软件:

  1. 源码安装 不推荐
  2. 软件包安装 -----rpm
  3. 包管理器-----yum(centos)/apt-get(ubuntu)

在Linux中安装其实就是拷贝,而且安装到系统中安装一次所有人都能使用

安装:yum install -y sl

卸载:yum remove -y sl

查找: yum list | grep sl

  1. base 稳定版软件
  2. epel 扩展软件源

3.Linux编辑器-vim的基础使用

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且 还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 macos、 windows。

image-20241011172554356

vim是一款多模式的编辑器,经常用的有三种:

  1. 命令模式
  2. 底行模式
  3. 插入模式----------------- 就和正常在记事本中写入一样

切换几种模式:

我们进入vim时,默认在命令模式

i 就可以进入到插入模式

如果在其他模式下按ESC 就可以回退到命令模式

shift :可以进入底行模式,这个模式下就可以退出了

1.命令模式下一些命令:

  • 有关光标的操作:

  1. gg快速回到文档第一行
  2. G快速文档定位结尾
  3. N + G 将光标定位到N行
  4. shift $(4)将光标定位到当前行的结尾
  5. shift ^(6) 将光标定位到当前行的前面
  6. h/j/k/l 左下上右(也可以用小键盘但不推荐)
    1. 可以先打数字这样可以直接移动n个单位
  7. w以单词为单位向后移动,
  8. b 以单词为单位向前移动(特殊字符不算为单词,一般直接跳过)
  9. ctrl + b屏幕向后翻一页
  10. ctrl + u屏幕向前翻一页
  • 有关复制删除的操作:

  1. yy复制当前行
  2. p光标所在位置进行粘贴
  3. u 撤销历史操作
  4. ctrl r撤销u操作
  5. dd剪切当前行,如果不用p可以当成删除使用
  6. x每按一次,删除光标的字符
  7. X光标右侧不动,左侧删除

一旦退出文本编辑,就无法撤销了

如果只是保存,没有q(退出),就一直可以撤销

也可以先加数字来实现多行复制

  • 有关字符替换的相关操作:

  1. r + 要替换的字符 替换光标所在字符
  2. R 进入replace模式,所有的输入都会将原来的内容替换掉
  3. shift ~ 可以快速将小写改为大写
  • 有关注释的相关操作:

ctrl + v进入视图模式(V-BLOCK)

进入视图模式可以使用:

  1. 可以使用hjkl进行区域选择
  2. I 进入插入模式
  3. 输入//ESC回退就可以批量注释
  4. 再次进入视图模式选中全部// 后按d就可以取消全部注释

当然也可以进行批量代码的补充

  1. shift + #选中单词 在使用n 可以进行查找

2.插入模式

  1. i直接进入
  2. a光标向后移动一个字符
  3. o光标向下移动一个行

3.底行模式下一些命令:

  1. set nu设置行号
  2. set nonu取消行号设置
  3. wq 保存并退出
  4. ZZ 快速退出并保存
  5. q!强制退出
  6. : command 可以在vim的环境下实现命令
  7. %s/dsc/src实现批量化替换
  8. / 要查找的内容也可以实现查找
  • 实现双窗口

  1. vim先进入后,进入底行模式vs 文件名就可以进入双窗口了
  2. ctrl ww切换窗口

4.vim命令

  1. vim 文件名 + 行数 可以打开后使光标直接定位到指定位置
  2. ! 历史命令的首字母实现历史命令的直接实现

4.vim配置

vim的配置文件在每个用户的~目录下的.vimrc的隐藏文件下如果没有就执行基本操作,如果有就对vim进行配置

当然如果配置的是 /etc/vimrc 的话,就对所有人生效

我们直接在里面进行更改即可

也可以通过网络来一键配置,当可能系统不兼容,我们可以通过以下方法来查看系统

image-20241016115347419

这里提供一个centos 7 版本的配置:

[VimForCpp: 快速将vim打造成c++ IDE (gitee.com)]

5.Linux编译器-gcc/g++使用

基本使用方法:

例如我们写入以下代码:

image-20241016183124699

基本使用方法:gcc code.c -o mycode

  1. -o 后面加的是要生成的文件名

  2. -E 从现在开始程序编译,在预处理做完时,就停下来 例如 gcc -E code.c -o code.i也就是预处理

  3. -S开始编译,将编译编译做完就停下来,形成汇编语言 例如 gcc -S code.i -o code.s

  4. -c 生成可从重定位的目标文件(已经是二进制的文件了) gcc -code.s -o code.o

image-20241016184957607

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

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

相关文章

华为OD机试 - 文本统计分析(Python/JS/C/C++ 2024 E卷 200分)

华为OD机试 2024E卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试真题(Python/JS/C/C)》。 刷的越多,抽中的概率越大,私信哪吒,备注华为OD,加入华为OD刷题交流群,…

在 Django 模板文件中出现错误:Could not parse the remainder: ‘!=0‘ from ‘!=0‘

问题在于我写了一条关于 {% if %} 标签中关于运算符 !0 的判断,出现 Could not parse the remainder: !0 from !0 错误 问题分析: 1、已确定 student 对象已经传递到模板中,并且 score 属性存在 2、确定 student.score 的值是可以与 0 进行…

前端开发设计模式——命令模式

目录 一、命令模式的定义和特点 1.定义: 2. 特点: 二、命令模式的结构与原理 1.结构: 2.原理: 三、命令模式的实现方式 1.定义接口命令: 2.创建具体的命令类: 3.定义接收者&…

blender分离含有多个动作的模型,并导出含有材质的fbx模型

问题背景 笔者是模型小白,需要将网络上下载的fbx模型中的动作,分离成单独的动作模型,经过3天摸爬滚打,先后使用了blender,3d max,unity,最终用blender完成,期间参考了众多网络上大佬…

编译器对连续构造的优化

一:优化的规则 在一行代码中连续进行:构造构造/构造拷贝构造/拷贝构造拷贝构造 都会合二为一 如下: a:构造构造->构造 b:构造拷贝构造->构造 c:拷贝构造拷贝构造->拷贝构造 注意&#xff…

KubeSphere v4 安装指南

日前,KubeSphere v4 发布,相较于之前的版本,新版本在架构上有了颠覆性的变化。为了让社区的各位小伙伴能够丝滑的从旧版本过渡到新版本,我们特别推出本篇安装指南文章,以供参考。 关于 KubeSphere v4 的介绍&#xff…

施磊C++ | 进阶学习笔记 | 5.设计模式

五、设计模式 文章目录 五、设计模式1.设计模式三大类型概述一、创建型设计模式二、结构型设计模式三、行为型设计模式 2.设计模式三大原则3.单例模式1.饿汉单例模式2.懒汉单例模式 4.线程安全的懒汉单例模式1.锁双重判断2.简洁的线程安全懒汉单例模式 5.简单工厂(Simple Facto…

MySQL 8.4修改user的host属性值

MySQL 8.4修改user的host属性值 update mysql.user set host localhost where user mysql用户名; MySQL 8.4修改初始化后的默认密码-CSDN博客文章浏览阅读804次,点赞6次,收藏11次。先下载mysql的zip压缩包:MySQL :: Download MySQL Communi…

(CWRU)轴承故障诊数据集和代码全家桶

包括 完整的CWRU轴承故障数据集, 以及已经生成制作好的一维故障信号数据集、时频图像数据集,对应代码均可以运行 点击下载:数据集和代码全家桶 环境:python 3.9 任何环境安装或者代码问题,请联系作者沟通交流&#xf…

操作符详解(C 语言)

目录 一、操作符的分类二、算数操作符1. 除法操作符2. 取余操作符 三、位移操作符1. 进制2. 原码、反码和补码3. 左移操作符&#xff08;<<&#xff09;和右移操作符&#xff08;>>&#xff09; 四、位操作符1. 按位与 &2. 按位或 |3. 按位异或 ^4. 按位取反 ~…

2018 年 NLP 的 10 个令人兴奋的想法

一、说明 这篇文章收集了有影响力的 10 个想法&#xff0c;我们将来可能会看到更多。 对于每个想法&#xff0c;我们将重点介绍 1-2 篇执行良好的论文。为了保持列表简洁&#xff0c;这里没有涵盖所有相关工作。该列表必然是主观的&#xff0c;涵盖主要与迁移学习和泛化相关的想…

老照片修复工作流教程:用 ComfyUI 轻松还原历史记忆

你是否有过这样的遗憾&#xff1f; 那些珍贵的老照片因为时间的流逝&#xff0c;早已失去了当年的色彩&#xff0c;变得模糊、褪色&#xff0c;甚至破损&#xff1f; 今天带你了解如何使用 ComfyUI 的老照片修复工作流&#xff0c;通过简单的几步操作&#xff0c;在短短十几秒…

三亚旅游微信小程序的设计与实现

详细视频演示 请联系我获取更详细的演示视频 项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念&#xff0c;提供了一套默认的配置&#xff0c;让开发者可以更专注于业务逻辑而不…

【深度学习代码调试1】环境配置篇(上) -- 安装PyTorch(安利方法:移除所有国内源,使用默认源)

【深度学习代码调试1】环境配置篇 -- 安装TensorFlow和PyTorch 写在最前面1. 创建新的Conda环境2. 安装PyTorch及相关库&#xff08;可以直接跳到2.3安装方法&#xff09;2.1 检查CUDA版本2.2 解决安装过程中常见问题2.2.1 超时问题&#xff08;这个不是最终解决方案&#xff0…

AUTOSAR_EXP_ARAComAPI的5章笔记(13)

☞返回总目录 5.4.7 事件&#xff08;Events&#xff09; 在骨架侧&#xff0c;服务实现负责通知事件的发生。如 5.4.2 RadarService Skeleton Class 所示&#xff0c;骨架为每个事件提供一个事件包装类的成员。骨架的事件包装类与代理的事件包装类看起来明显不同。 在骨架端…

论文阅读:On determining the hinterlands of China‘s foreign trade container ports

集装箱港口腹地的边界线&#xff0c;只要存在&#xff0c;就可以作为未来港口发展和基础设施规划的参考点。在早期划定中国港口腹地的努力中&#xff0c;要么考虑的港口数量有限&#xff0c;要么仅根据港口总吞吐量划定腹地。因此&#xff0c;这些研究都没有让我们清楚地了解共…

快速理解AUTOSAR CP的软件架构层次以及各层的作用

在 AUTOSAR CP 的架构中&#xff0c;软件分为 应用层 (App)、运行时环境 (RTE) 和 基础软件层 (BSW) 三个主要层级。下面是每一层的主要功能与简单的代码示例来展示它们之间的关系。 1. 概述 应用层 (App)&#xff1a;包含应用程序代码&#xff0c;主要实现业务逻辑。应用层通…

DeepFM模型代码详解

直到看到这篇文章&#xff0c;我才搞明白类别特征怎么做lookup的&#xff0c;也看明白了代码逻辑。如果你看完没懂&#xff0c;私信留下wx&#xff0c;给你讲懂。 1、Deepfm 的原理&#xff0c;DeepFM 是一个模型还是代表了一类模型&#xff0c;DeepFM 对 FM 做了什么样的改进…

【时时三省】(C语言基础)函数介绍strcat

山不在高&#xff0c;有仙则名。水不在深&#xff0c;有龙则灵。 ----CSDN 时时三省 strcat 字符串追加 示例&#xff1a; 比如我要把world加到hello后面去 就可以用这个 还有一种方法是这样 这两个代码的意思是一样的 只是写法不一样 写的时候要注意这些 •源字符串必须…

DAB-DETR: DYNAMIC ANCHOR BOXES ARE BETTER QUERIES FOR DETR论文笔记

原文链接 [2201.12329] DAB-DETR: Dynamic Anchor Boxes are Better Queries for DETR (arxiv.org)https://arxiv.org/abs/2201.12329 原文笔记 在本文中&#xff0c;我们提出了一种新的查询公式&#xff0c;使用动态锚框进行DETR (DEtection TRansformer)&#xff0c;并对查…