当前位置: 首页 > news >正文

【Linux】Linux入门实操——vim、目录结构、远程登录、重启注销

一、Linux 概述

1. 应用领域

  • 服务器领域

linux在服务器领域是最强的,因为它免费、开源、稳定。

  • 嵌入式领域

它的内核最小可以达到几百KB, 可根据需求对软件剪裁,近些年在嵌入式领域得到了很大的应用。

主要应用:机顶盒、数字电视、网络电话、交换机、手机、PDA、智能家居等。以后会在物联网种更广泛应用。

  • 个人桌面领域的应用

此领域是linux的薄弱环节,但近年来随着ubuntu、fedora等优秀桌面环境的兴起,linux在个人桌面领域的占有率在提高。

2. linux 主要发行版本

Ubuntu(乌班图)、RedHat(红帽)、CentOS、Debain(蝶变)、Fedora、SuSE、OpenSUSE(示意图)

3. linux和unix的关系

unix也是一个操作系统,它诞生于贝尔实验室。上个世纪七十年代,正在研发多用户分时操作系统,当时有三家公司参加,其中一个就是贝尔实验室。最终这个系统没有研发成功,但留下了一些代码。贝尔实验室的一个人就拿这些代码做了改进,成功后命名为unix。unix最早的版本是bun语言写的,但性能不好,最后又用C语言改写了。

上个世纪八十年代,sun、hp(惠普)等大公司觉得unix很有发展,就拿开源的unix又进行了二次开发改写,但这些系统改写后只能适用于大型的服务器中,个人PC机是安装不了的。当时有个伟大的人表示在自由的时代用户应该免费享有软件源代码的权利,软件公司不能够将他人的开源项目改写后拿来赚钱,软件公司可以提供服务来获取盈利。

再后来,又有个芬兰的大神贡献了linux内核,第一个linux版本不到一万行的代码,完整的叫法应该是GNU/linux。然后有许多雷锋就基于这个内核开发了很多开源的系统,如乌班图(ubuntu)、红帽(Redhat)等等。

二、Linux基本使用

1. 目录结构

linux 的文件系统是采用级层式的树形目录结构, 在此结构中最上层式根目录“/”,然后在根目录下创建其它的目录。linux 的世界里,一切皆文件。文件很重要,需要记住。

  • /bin : 是Binary 的缩写,这个目录存放常用的命令
  • /sbin :s就是super user 的意思,这里存放系统管理员使用的系统管理程序
  • /root :该目录为系统管理员,也称作超级权限者的用户主目录
  • /lib :系统开机所需要最基本的动态连接共享库作用类似于windows 系统的 DLL文件,几乎所有的应用程序都需要用到这些共享库。
  • /lost + found 这个目录一般是空的,当系统非法关机后,这里就存放了一些文件
  • /etc : 系统管理所需要的配置文件和子目录,比如安装mysql 数据库 my.conf
  • /usr : 用户安装的应用程序都放在这个目录下,类似于windows下的program files文件夹
  • /boot 存放的是启动系统时需要的核心文件,包含一些连接文件和镜像文件。
  • /proc 这个目录是虚拟目录,它是系统内存的映射,访问这个目录来获取系统信息,不能动
  • /srv : service缩写,存放服务启动后需要提取的数据不能动
  • /sys 这是Linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的文件系统sysfs,不能动
  • /tmp  这个目录用来存放一些临时文件
  • /dev 类似于windows的设备管理器,把所有的硬件用文件的形式存储
  • /media 系统自动识别设备所用的,比如U盘、光盘,识别设备后,linux会把识别的设备挂载到这个目录下。
  • /mnt  用户临时挂载别的文件系统的,可以把外部的存储挂载到 /mnt/ 上。
  • /opt 存放安装包,给主机存放安装软件的, 如jdk, mysql
  • /usr/local  另一个给主机存放安装软件的, 一般是通过编译源码的方式安装程序
  • /var  存放不断扩充的东西,将常被修改的文件放在这个目录,包括各种日志
  • /selinux 【security-enhanced linux】SELinux 是一种安全子系统,能控制程序只能访问特定文件,有三种工作模式,可自行设置,类似于windows 360 

2. 远程登录

以后我们开发的项目是在服务器上的,如果需要对项目进行维护,就涉及到自己本机和服务器之间的通讯了,这是就需要利用远程软件(如Xshell)对两台主机之间进行通讯。如果需要文件上传和下载,需要用到XHP软件。

Xshell 下载地址: 家庭/学校免费 - NetSarang Website

  • Xshell 是目前最好的远程登录linux 操作的软件,流畅的熟读并且完美解决了中文乱码的问题
  • Sshell 支持SSH1,SSH2,以及windows 平台的TELNET协议。
  • 可以在windows界面下用来访问远程不同系统的服务器。

首先需要检查本机与虚拟机是否能通讯。查看linux ip 地址命令: ifconfig, 查看到IP地址,在本地电脑打开命令提示符,ping 虚拟机IP,如果ping不通,远程软件也是无法连接的。 

通过Xshell 远程连接虚拟机。

查看linux系统的目录,发现已经连接到了远程linux。

我们可是在输入命令reboot重启linux系统 

3. 远程文件传输

远程文件传输是一个基于windows平台的功能强大的SFTP、FTP文件传输软件。使用了Xftp 以后,windows用户能安全地在UNIX/Linux和WindowsPC之间传输文件。

远程文件传输下载  : 家庭/学校免费 - NetSarang Website

第一次登录需要验证用户名和密码 

之后一个界面有两个窗口,左边是windows窗口,右边是linux窗口

 如何上传文件到linux中呢?

首先通过Xftp远程连接linux, 验证通过后会出现如上图所示的界面。先在linux下跳转到目标存放目录,在windows下选中需要传输的文件,右键-----> 传输, 即可传送到linux下。

如果linux界面出现了乱码。选择属性----> 选项-----> 把编码设置为UTF8

4.vim 入门

Linux 系统会内置vi文本编辑器。
Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

4.1. vi 和 vim 的三种模式

正常模式

默认就是这个模式。可以使用【上下左右】按键来移动光标,可以使用【复制、粘贴】来处理文件数据。

插入模式

按下【i、I、o、O、A、a、r、R】等任何一个字母之后才会进入编辑模式,一般来说按 i 即可。

命令行模式

按下esc退出再输入冒号,这个模式可以提供相关指令,完成读取、存储、替换、离开 vim、显示行号等动作是在该模式下完成的。

4.2. 使用Xshell编辑Hello.java文件

输入 vim Hello.java, 就会跳转到一个vim界面,此时是不能编辑的,我们采用插入模式编辑,在vim界面输入 i , 就可以编辑了。

编写之后按下esc, 输入: wq, 即可退出 

4.3. vim 各种模式切换图

 4.4. vim 快捷键

  1. 拷贝:在正常模式下,拷贝当前行 yy,拷贝当前行的向下4行,4yy, 粘贴(按下p)
  2. 删除:在正常模式下,删除当前行 dd,删除当前行的向下4行,4dd, 粘贴
  3. 查找:在命令行模式下,输入 / ,输入待查找的信息后回车,按 n 键查找下一个。如果要查找另一个信息,再次按下 /, 重复上述操作即可。
  4. 行号:在命令行模式下,输入 set nu 显示行号; 输入set nonu 取消行号。
  5. 在一般模式下,按下 G 到达该文档文档最末行, gg 该文档最首行
  6. 在一般模式下,撤销上一次编辑
  7. 在一般模式下,数字+shift+g, 快速定位到指定行。

5. 关机重启、登录注销

  • 关机重启

shutdown   -h  now    立刻进行关机

shutdown   -h    1       "hello, 1分钟后关机"   # 注意:这里是按分钟计算的

shutdown   -h    12:00      12:00进行关机

shutdown   等价于 shutdown -h 1 ;   #  1 分钟后关机

halt       关机

shutdown   -r    now    现在重启

reboot      现在重启

sync    把内存的数据同步到磁盘

shutdown -c   取消关机命令 【linux】

shutdown -a   取消关机命令 【windows】

注意:无论是重启还是关机,先运行sync 命令,把内存种数据写到磁盘。

目前的shutdown、reboot、halt 等命令在关机前底层进行了 sync ,为了保险起见,可以自己再执行一次。

  • 登录注销

root 拥有最高系统权限,在开发中我们可能没有这么高的权限。如何在普通权限登录到root权限呢?输入指令 su - root  回车需要输入密码,验证成功后切换到了root账户。

切换用户

root - 用户名

 注销

logout 注销指令在图形运行级别无效,在运行级别3下有效

logout    # 注销

相关文章:

【Linux】Linux入门实操——vim、目录结构、远程登录、重启注销

一、Linux 概述 1. 应用领域 服务器领域 linux在服务器领域是最强的,因为它免费、开源、稳定。 嵌入式领域 它的内核最小可以达到几百KB, 可根据需求对软件剪裁,近些年在嵌入式领域得到了很大的应用。 主要应用:机顶盒、数字电视、网络…...

Redis的缓存问题与应对策略

Redis 作为一种高效的缓存系统,在高并发环境下应用广泛,但也面临一些缓存问题,以下是常见问题及其应对策略。 1. 缓存穿透 问题描述 缓存穿透是指请求的数据在缓存和数据库中都不存在,但大量请求直接到达数据库,从而给…...

Java项目实战II基于Spring Boot的智慧生活商城系统的设计与实现(开发文档+数据库+源码)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。 一、前言 随着科技的飞速发展,人们的…...

每日一题之成绩排序

在N&#xff08;N<30&#xff09;名运动员参加的体操比赛中&#xff0c;有K&#xff08;K<10&#xff09;名裁判给每位运动员分别打分&#xff0c; 按规则每名运动员最后得分需去掉一个最高分和一个最低分&#xff0c; 然后把其他裁判的打分相加&#xff0c;计算得出该运…...

QT Widget:使用技巧

1、Qt中的QString和const char *之间转换&#xff0c;最好用toStdString().c_str()而不是toLocal8Bit().constData()&#xff0c;比如在setProperty中如果用后者&#xff0c;字符串中文就会不正确&#xff0c;英文正常。 2、数据库处理一般建议在主线程&#xff0c;如果非要在…...

深入Zookeeper节点操作:高级功能与最佳实践

Zookeeper之节点基本操作&#xff08;二&#xff09; 在《Zookeeper之节点基本操作&#xff08;一&#xff09;》中&#xff0c;我们介绍了如何创建、读取、更新、删除节点的基本操作。接下来将进一步探讨Zookeeper中节点的进阶操作和更多细节&#xff0c;包括节点的监视&…...

【C++】map和set的介绍及使用

前言&#xff1a; map和 set 是 C STL&#xff08;标准模板库&#xff09;中的两种非常重要的容器&#xff0c;它们基于一种叫做平衡二叉搜索树&#xff08;通常是红黑树&#xff09;的数据结构来实现。在 C 中&#xff0c;map 是一个键值对容器&#xff0c;set 只存储唯一的键…...

从0开始搭建一个生产级SpringBoot2.0.X项目(十)SpringBoot 集成RabbitMQ

前言 最近有个想法想整理一个内容比较完整springboot项目初始化Demo。 SpringBoot集成RabbitMQ RabbitMQ中的一些角色&#xff1a; publisher&#xff1a;生产者 consumer&#xff1a;消费者 exchange个&#xff1a;交换机&#xff0c;负责消息路由 queue&#xff1a;队列…...

GNU/Linux - /proc/sys/vm/drop_caches

/proc/sys/vm/drop_caches 是 Linux 中的一个特殊文件&#xff0c;允许用户释放系统内存中的各种缓存。让我们深入了解一下这项功能的细节&#xff1a; The /proc/sys/vm/drop_caches is a special file in Linux that allows users to free up various caches in the systems …...

ubuntu 22.04 如何调整进程启动后能打开的文件数限制

在 Ubuntu 22.04 中&#xff0c;可以通过修改系统配置来调整进程启动后能够打开的文件数软限制。软限制是指操作系统允许单个进程打开的文件描述符的最大数量。以下是调整该限制的方法&#xff1a; 1. 查看当前限制 首先&#xff0c;你可以通过 ulimit 命令查看当前的软限制和…...

linux基础-完结(详讲补充)

linux基础-完结 一、Linux目录介绍 二、基础命令详细讲解 1. ls&#xff08;列出目录内容&#xff09; 2. cd&#xff08;更改目录&#xff09; 3. clear&#xff08;清除终端屏幕&#xff09; 4. pwd(显示你当前所在的目录) 5. vim(文本编辑器) 6. touch&#xff08;创…...

LoRA:大型语言模型(LLMs)的低秩适应;低秩调整、矩阵的低秩与高秩

目录 LoRA:大型语言模型(LLMs)的低秩适应 一、LoRA的基本原理 二、LoRA的举例说明 三、LoRA的优势 低秩调整、矩阵的低秩与高秩 一、低秩调整(LoRA) 二、矩阵的低秩 三、矩阵的高秩 LoRA:大型语言模型(LLMs)的低秩适应 LoRA(Low-Rank Adaptation of LLMs),…...

游戏引擎学习第四天

视频参考:https://www.bilibili.com/video/BV1aDmqYnEnc/ BitBlt 是 Windows GDI&#xff08;图形设备接口&#xff09;中的一个函数&#xff0c;用于在设备上下文&#xff08;device context, DC&#xff09;之间复制位图数据。BitBlt 的主要用途是将一个图像区域从一个地方复…...

GIT GUI和 GIT bash区别

Git GUI 和 Git Bash 都是与 Git 版本控制工具相关的用户界面&#xff0c;但它们有不同的功能和用途。下面详细说明它们的区别及各自的作用&#xff1a; Git GUI 作用&#xff1a; Git GUI 是一个图形用户界面&#xff08;GUI&#xff09;工具&#xff0c;用于执行 Git 操作。…...

丹摩征文活动|Faster-Rcnn-训练与测试详细教程

本文 丹摩智算平台官方网站的介绍Faster-Rcnn-训练与测试提前准备进行Faster-rcnn 的环境配置数据集的介绍 丹摩智算平台官方网站的介绍 丹摩智算平台&#xff08;DAMODEL&#xff09;是专为人工智能&#xff08;AI&#xff09;开发者打造的高性能计算服务平台&#xff0c;旨在…...

星期-时间范围选择器 滑动选择时间 最小粒度 vue3

星期-时间范围选择器 功能介绍属性说明事件说明实现代码使用范例 根据业务需要&#xff0c;实现了一个可选择时间范围的周视图。用户可以通过鼠标拖动来选择时间段&#xff0c;并且可以通过快速选择组件来快速选择特定的时间范围。 功能介绍 时间范围选择&#xff1a;用户可以…...

一条SQL查询语句的执行流程(MySQL)

第一步&#xff1a;连接器&#xff08;负责跟客户端建立连接、获取权限、维持和管理连接&#xff09; 第二步&#xff1a;查询缓存 之前执行过的查询&#xff0c;MySQL以"Key - Value"的形式存在内存&#xff08;key为SQL&#xff0c;value为结果集&#xff09;&…...

linux基础——详细篇

免责声明 学习视频来自B 站up主泷羽sec&#xff0c;如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识&#xff0c;以下代码、网站只涉及学习内容&#xff0c;其他的都与本人无关&#xff0c;切莫逾越法律红线&#xff0c;否则后果自负。 linux 基础命令重现 cd(切…...

大数据学习10之Hive高级

1.Hive高级 将大的文件按照某一列属性进行GROUP BY 就是分区&#xff0c;只是默认开窗存储&#xff1b; 分区是按行&#xff0c;如一百行数据&#xff0c;按十位上的数字分区&#xff0c;则有十个分区&#xff0c;每个分区里有十行&#xff1b; 分桶是根据某个字段哈希对桶数取…...

MongoDB笔记01-概念与安装

文章目录 前言一、MongoDB相关概念1.1 业务应用场景具体的应用场景什么时候选择MongoDB 1.2 MongoDB简介1.3 体系结构1.4 数据模型1.5 MongoDB的特点 二、本地单机部署2.1 Windows系统中的安装启动第一步&#xff1a;下载安装包第二步&#xff1a;解压安装启动1.命令行参数方式…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

AI书签管理工具开发全记录(十九):嵌入资源处理

1.前言 &#x1f4dd; 在上一篇文章中&#xff0c;我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源&#xff0c;方便后续将资源打包到一个可执行文件中。 2.embed介绍 &#x1f3af; Go 1.16 引入了革命性的 embed 包&#xff0c;彻底改变了静态资源管理的…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析&#xff08;Parser&#xff09; 2.4、执行sql 1. 预处理&#xff08;Preprocessor&#xff09; 2. 查询优化器&#xff08;Optimizer&#xff09; 3. 执行器…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

DiscuzX3.5发帖json api

参考文章&#xff1a;PHP实现独立Discuz站外发帖(直连操作数据库)_discuz 发帖api-CSDN博客 简单改造了一下&#xff0c;适配我自己的需求 有一个站点存在多个采集站&#xff0c;我想通过主站拿标题&#xff0c;采集站拿内容 使用到的sql如下 CREATE TABLE pre_forum_post_…...