02-Linux【基础篇】

一、Linux的目录结构

1.基本介绍

Linux的文件系统采用层级式的树状目录结构,在此结构中的最上层是根目录"/",然后在此目录下再创建其他的目录

深刻理解Linux树状文件目录是非常重要的

记住一句经典的话:在Linux世界里,一切皆文件!!

在这里插入图片描述

2.具体的目录结构

(不用背,知道即可)

在这里插入图片描述

/bin [常用]

  • 是Binary的缩写,这个目录存放着最经常使用的命令

/sbin

  • s是Super的缩写,这里存放的是系统管理员使用的管理员命令

/home [常用]

  • 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录

/root[常用]

  • 该目录为系统管理员目录

/lib

  • 系统开机所需要最基本的动态连接共享库,几乎所有的应用程序都需要用到这些共享库

/lost+found

  • 这个目录一般情况下是空的,是系统非法关机后,存放的一些文件

/etc [常用]

  • 所有系统管理所需要的配置文件和子目录,比如系统配置文件,mysql配置文件等等

/usr [常用]

  • 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下

/boot [常用]

  • 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件

/proc[不能动]

  • 这个目录是一个虚拟的目录,他是系统内存的映射,访问这个目录来获取系统信息

/srv [不能动]

  • 该目录存放一些服务启动之后需要提取的数据

/sys [不能动]

  • Linux内核文件

/tmp

  • 这个目录用来存放一些临时文件

/dev

  • 设备管理器目录,把所有硬件用文件的形式存储

/media [常用]

  • 是Linux系统自动识别(例如U盘、光盘等)的一些设备挂载到这个目录下

/mnt [常用]

  • 系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将外部存储挂载在/mnt上,然后进入该目录就可以查看里面的内容

/opt

  • 这是给主机额外安装软件所存放的目录(安装包文件)

/usr/local [常用]

  • 这是另一个给主机额外安装软件所安装的目录,也就是将用户安装好的应用程序放到这里

/var

  • 这个目录存放不断更新的东西,比如经常需要修改的目录和日志文件

/seLinux

  • Linux的安全子系统,它能控制程序只能访问特定文件,有3种工作模式,可自行设置

二、远程登录和远程文件传输

说明:公司开发的时候,具体应用场景

  • Linux服务器是开发小组共享的
  • 正式上线的项目是运行在公网的
  • 程序员需要远程登录到Linux进行项目管理或者开发
  • 以下是理解图

在这里插入图片描述

1.远程登录

①window系统下载安装Xshell软件-免费版

②进入Linux操作系统,在终端输入ifconfig查看ip(第一个),并在本机windows上的cmd进行对该ip进行ping操作,看看能不能连通ping

如出现下问题输入:sudo apt install net-tools进行下载,下载完再查询,获取ip地址

③打开Xshell软件,新建连接,输入Linux查询的ip,端口号默认是22

④配置完后双击会话进行连接

问题:如果无法连接则可能是Linux系统没有装SSH服务

解决办法1:

进入Linux操作系统首先我们在Liunx(Ubuntu)中通过ps -e|grep ssh命令判断是否安装ssh服务:如果没有sshd则表示没有安装,则进行下载安装

​ 输入 apt-get install openssh-server 来下载安装

​ 再输入 service sshd restart来启动ssh服务

​ 输入 sudo service ssh status 查看是否启动成功

问题2:防火墙未关闭

解决办法2:

​ 采用 sudo ufw status查看是否关闭防火墙

⑤输入用户名(用户名是可以是Linux系统的普通用户的用户名也可以是管理员的用户名),在输入对应的密码即可连接到Linux

⑥页面的显示,是一种以终端的显示给出,在里面输入Linux的指令,即可完成对Linux的控制

2.远程文件传输

①下载安装XFTP软件-免费版

②打开XFTP软件,点击新建,输入主机ip,和Xshell一样,查询linux服务器主机ip然后输入到XFTP的主机中,端口和ssh一样,默认都是22,点击连接,输入用户名(用户名是可以是Linux系统的普通用户的用户名也可以是管理员的用户名),在输入对应的密码即可连接到Linux

③点击软件内一个地球图标,它表示的是编码方式,改成UTF-8编码方式,即可解决中文乱码

④文件相互左右拖动,即可完成相互的远程文件传输

三、Linux文件编辑

1.vi和vim基本介绍

Linux系统自带vi文本编辑器

vim具有程序编辑的能力,可以看作是vi的增强版,可以主动的以字体颜色辨别语法的正确性,为方便程序设计。代码补完,编译以及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用

vim的安装

Ubuntu系统,输入命令:

sudo apt install vim

Centos系统,输入命令:

yum -y install vim*

vi 文件名:即可进入文件编辑

vim 文件名:即可进入文件编辑

2.vi和vim常用的三种模式

①正常模式:

​ 以vi或者vim打开的文档就直接进入了一般模式(默认模式)查看文档,这个模式中可以移动光标,或者将光标移动到指定位置,也可以删除字符或删除整行来处理内容,也可以复制和粘贴来处理文件数据

②插入模式:

​ 按下i、o、a、r等任何一个字母后会进入插入模式,常用i来进入

③命令行模式:

​ 按下ESC再输入:即可进入这个模式,这个模式中,可以提供你的相关指令,完成读取,存盘,替换,离开vim,显示行号等的动作

2.vi和vim三种模式切换逻辑图

在这里插入图片描述

3.vi和vim快捷键

一般模式下:

  • 拷贝当前行 yy ,拷贝当前行向下5行 5yy , 粘贴 p
  • 删除当前行 dd , 删除当前行向下的5行 5dd
  • 下一个 n(搭配查找使用)
  • 定位到文档首行 gg 末行 G
  • 撤销输入 u
  • 定位到具体行 行数+shift+g

命令行模式下:

  • 查找某个单词:/单词 ----然后回车即可(切换到一般模式下,按下n即可下一个)
  • 显示文档使用行数 set nu ,隐藏文档使用行数 set nonu

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

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

相关文章

如何在 DigitalOcean Droplet 云主机上创建 Ubuntu 服务器

在本文中,你将通过 DigitalOcean 的管理面板创建一个 Ubuntu 服务器,并将其配置为使用你的 SSH 密钥。设置好服务器后,你可以在其上部署应用程序和网站。 本教程是DigitalOcean云课程简介的一部分,它指导用户完成将应用程序安全地…

win10右键没有默认打开方式的选项的处理方法

问题描述 搞了几个PDF书籍学习一下,不过我不想用默认的WPS打开,因为WPS太恶心人了,占用资源又高。我下载了个Sumatra PDF,这时候我像更改pdf文件默认的打开程序,发现右击没有这个选项。 问题解决 右击文件–属性–…

汽车以太网发展现状及挑战

一、汽车以太网技术联盟 目前推动汽车以太网技术应用与发展的组织包括:OPEN Alliance(One-Pair Ether-Net Alliance SIG)联盟,主要致力于汽车以太网推广与使用,该联盟通过推进 BroadR- Reach 单对非屏蔽双绞线以太网传…

设计新境界:大数据赋能UI的创新美学

设计新境界:大数据赋能UI的创新美学 引言 随着大数据技术的蓬勃发展,它已成为推动UI设计创新的重要力量。大数据不仅为界面设计提供了丰富的数据资源,还赋予了设计师以全新的视角和工具来探索美学的新境界。本文将探讨大数据如何赋能UI设计…

面试八股之JVM篇3.5——垃圾回收——G1垃圾回收器

🌈hello,你好鸭,我是Ethan,一名不断学习的码农,很高兴你能来阅读。 ✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。 🏃人生之义,在于追求,不在成败,勤通…

1688. 比赛中的配对次数

题目: 给你一个整数 n ,表示比赛中的队伍数。比赛遵循一种独特的赛制: 如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮。 如果当前队伍数为 奇数 …

python梯度下降法求解三元线性回归系数,并绘制结果

import numpy as np import matplotlib.pyplot as plt # 生成随机数据 np.random.seed(0) X1 2 * np.random.rand(100, 1) X2 3 * np.random.rand(100, 1) X3 4 * np.random.rand(100, 1) y 4 3 * X1 5 * X2 2 * X3 np.random.randn(100, 1) # 合并特征 X_b np.hsta…

Vue中组件之间的通信有哪些方法

在Vue中,组件之间的通信有多种方法,以下是一些常见的方法: Props和$emit: 父组件通过props向子组件传递数据。子组件通过$emit触发事件,将数据传递给父组件。 provide和inject: 在Vue 2.2.0版本中引入的选…

云计算-特殊机制(Specialsed Mechanisms)

自动扩展监听器 (Automated Scaling Listener) 自动扩展监听器是一种特定类型的服务代理。它运行在云提供商的网络中,监控云消费者和云服务之间的网络流量。通过分析消费者和服务之间的消息量和类型,它可以测量云服务的负载。 自动扩展监听器对变化的负载…

常见 JVM 面试题补充

原文地址 : 26 福利:常见 JVM 面试题补充 (lianglianglee.com) CMS 是老年代垃圾回收器? 初步印象是,但实际上不是。根据 CMS 的各个收集过程,它其实是一个涉及年轻代和老年代的综合性垃圾回收器。在很多文章和书籍的划分中&…

SpringCloud Alibaba的相关组件的简介及其使用

Spring Cloud Alibaba是阿里巴巴为开发者提供的一套微服务解决方案,它基于Spring Cloud项目,提供了一系列功能强大的组件,包括服务注册与发现、配置中心、熔断与限流、消息队列等。 本文将对Spring Cloud Alibaba的相关组件进行简介&#xff…

React Native 之 动画Animated(十二)

react-native 的 Animated API提供了一种声明式的方式来创建平滑的动画效果。它允许你编写动画逻辑,并将动画值直接绑定到组件的样式或布局属性上。 react-native 的 Animated 库通过以下方式工作: 创建动画值:首先,你需要使用 A…

ROCm上运行预训练BERT

14.10. 预训练BERT — 动手学深度学习 2.0.0 documentation (d2l.ai) 下载数据集 在d2l-zh/pytorch/data目录解压: ~/d2l-zh/pytorch/data$ unzip wikitext-2-v1.zip Archive: wikitext-2-v1.zipcreating: wikitext-2/inflating: wikitext-2/wiki.test.tokens …

【第17章】MyBatis-Spring之注入映射器

文章目录 前言一、注册映射器1. XML 配置2. Java 配置 二、发现映射器1. <mybatis:scan/>2.MapperScan ( 建议 ) \color{#00FF00}{(建议)} (建议) 三、MapperScannerConfigurer总结 前言 与其在数据访问对象&#xff08;DAO&#xff09;中手工编写使用 SqlSessionDaoSu…

数据库--数据库基础(一)

目录 第一章 绪论 一.数据库的基本概念 1. 数据库的4个基本概念 2、数据库系统的特点 二.数据库和文件 三.数据模型 1.概念模型 2.逻辑模型(物理模型) 2.1关系模型 四.数据库系统的三级模式结构&#xff1a; 五数据库的二级映像功能与数据独立性 第二章 关系数据库…

WEBPACK开发|生产环境配置(抽离公共部分)

这是webpack4演示&#xff0c;webpack5有些插件不在推荐&#xff0c; 1. webpack.base.config.js文件的配置说明 const path require(path); const webpack require(webpack); const ExtractTextPlugin require(extract-text-webpack-plugin); // 该插件的主要是为了抽离c…

【LeetCode面试经典150题】100. 相同的树

一、题目 100. 相同的树 - 力扣&#xff08;LeetCode&#xff09; 给你两棵二叉树的根节点 p 和 q &#xff0c;编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同&#xff0c;并且节点具有相同的值&#xff0c;则认为它们是相同的。 二、思路 二叉树的题&#…

C++的lambda函数、bind函数、类函数绑定参数,学习测试用例

在C中&#xff0c;Lambda函数、std::bind 和类函数绑定参数提供了灵活的方式来处理函数调用。 Lambda函数是一种匿名函数&#xff0c;可以捕获外部变量并在函数体内使用。它们提供了简洁而强大的方式来定义内联函数。std::bind 用于创建一个新的函数对象&#xff0c;其中部分参…

2024电工杯数学建模B题高质量成品论文,包括代码数据

2024电工杯数学建模B题高质量成品论文&#xff0c;包括代码数据 完整内容见文末名片 摘要 大学时期是学生们知识学习和身体成长的重要阶段&#xff0c;良好的饮食习惯对于促进生长发育和保证身体健康具有重要意义。针对当前大学生中存在的饮食结构不合理及不良饮食习惯的问题…

为了性能,放弃tft_eSPI,选择arduino_gfx吧

本来对于tft_espi和arduino_gfx没啥特别的感觉&#xff0c;都是tft屏幕驱动,arduino_gfx的好处就是除了支持tft外还支持一些oled屏幕。 谁知道在探寻我那个在单片机项目上显示中文方案 https://github.com/StarCompute/tftziku 时候&#xff0c;寻求极致性能测了一些东西。 t…