Linux ——实操篇

Linux ——实操篇

  • 前言
  • vi 和 vim 的基本介绍
  • vi和vim常用的三种模式
    • 正常模式
    • 插入模式
    • 命令行模式
  • vi和vim基本使用
  • 各种模式的相互切换
  • vi和vim快捷键
  • 关机&重启命令
    • 基本介绍
    • 注意细节
  • 用户登录和注销
    • 基本介绍
    • 使用细节
  • 用户管理基本介绍
    • 添加用户
      • 基本语法
      • 应用案例
      • 细节说明
    • 指定/修改密码
      • 基本语法
      • 应用案例
    • 删除用户
      • 基本语法
      • 应用案例
    • 查询用户信息指令
      • 基本语法
      • 应用实例
    • 切换用户
      • 基本语法
      • 应用实例
      • 细节说明
    • 查看当前用户/登录用户
    • 用户组
      • 新增组
      • 删除组
      • 案例演示
      • 修改用户的组
    • 用户和组相关文件
      • /etc/passwd 文件
      • /etc/shadow 文件
      • /etc/group 文件

前言

vi 和 vim 的基本介绍

Linux 系统会内置 vi 文本编辑器

Vim 具有程序编辑的能力,可以看做是 Vi 的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
在这里插入图片描述

vi和vim常用的三种模式

正常模式

以 vim 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、粘贴』来处理你的文件数据。

插入模式

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

命令行模式

输入esc 再输入:在这个模式当中, 可以提供你相关指令,完成读取、存盘、替换、离开 vim 、显示行号等的动作则是在此模式中达成的!

vi和vim基本使用

使用 vim 开发一个 Hello.java 程序, 保存.步骤说明和演示
在这里插入图片描述

各种模式的相互切换

在这里插入图片描述

vi和vim快捷键

小测试:

  1. 拷贝当前行 yy, 拷贝当前行向下的5行 5yy,并粘贴(输入p)。
  2. 删除当前行 dd , 删除当前行向下的5行 5dd
  3. 在文件中查找某个单词 [命令行下 /关键字 , 回车 查找 , 输入 n 就是查找下一个 ]
  4. 设置文件的行号,取消文件的行号.[命令行下 :setnu 和 :setnonu]
  5. 编辑 /etc/profile 文件,在一般模式下, 使用快捷键到该文档的最末行[G]和最首行[gg]
  6. 在一个文件中输入 “hello”,在一般模式下, 然后又撤销这个动作 u
  7. 编辑 /etc/profile 文件,在一般模式下, 并将光标移动到 , 输入 20,再输入 shift+g
  8. 更多的看整理的文档
  9. 快捷键的键盘对应图
    在这里插入图片描述

关机&重启命令

基本介绍

shutdown–hnow立该进行关机
shudown-h1“hello, 1 分钟后会关机了”
shutdown–rnow现在重新启动计算机
haltNULLNULL关机,作用和上面一样
rebootNULLNULL现在重新启动计算机
syncNULLNULL把内存的数据同步到磁盘

注意细节

  1. 不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中

  2. 目前的 shutdown/reboot/halt 等命令均已经在关机前进行了 sync

用户登录和注销

基本介绍

  • 登录时尽量少用root帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用”su- 用户名’命令来切换成系统管理员身份
  • 在提示符下输入 logout 即可注销用户

使用细节

  • logout 注销指令在图形运行级别无效,在运行级别 3下有效.
  • 运行级别这个概念,后面给大家介绍

用户管理基本介绍

Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统

添加用户

基本语法

useradd 用户名

应用案例

案例1:添加一个用户 milan, 默认该用户的家目录在 /home/milan

细节说明

  1. 当创建用户成功后,会自动的创建和用户同名的家目录
  2. 也可以通过 useradd-d 指定目录 新的用户名,给新创建的用户指定家目录

指定/修改密码

基本语法

passwd 用户名

应用案例

给milan 指定密码
passwd milan
补充,显示当前用户所在的目录 pwd

删除用户

基本语法

userdel 用户名

应用案例

  1. 删除用户milan,但是要保留家目录,userdel milan
  2. 删除用户以及用户主目录, 比如tom,userdel-r tom

查询用户信息指令

基本语法

id 用户名

应用实例

案例:请查询root 信息
#id root

切换用户

在操作Linux中,如果当前用户的权限不够,可以通过 su- 指令,切换到高权限用户,比如root

基本语法

su- 切换用户名

应用实例

创建一个用户jack, ,指定密码,然后切换到 jack

细节说明

  1. 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
  2. 当需要返回到原来用户时,使用exit/logout指令

查看当前用户/登录用户

基本语法
whoami/ who am I

用户组

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理

新增组

指令 :groupadd 组名

删除组

指令(基本语法): groupdel 组名

案例演示

  1. 增加用户时直接加上组
  2. 指令(基本语法):useradd–g 用户组 用户名
  3. 增加一个用户 zwj, 直接将他指定到 wudang
  4. groupadd wudang
  5. useradd-g wudang zwj

修改用户的组

指令(基本语法):usermod–g 用户组 用户名
案例演示
创建一个组 mojiao
把zwj 放入到 mojiao
指令:usermod-g mojiao zwj

用户和组相关文件

/etc/passwd 文件

用户(user)的配置文件,记录用户的各种信息
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

/etc/shadow 文件

口令的配置文件

/etc/group 文件

每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

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

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

相关文章

Java基础(九)数组工具类

数组工具类 1. Arrays类 a. 导入方法 import java.util.Arrays;b. Arrays类常用的方法 方法返回类型说明equals(array1, array2)boolean比较两个数组是否相等sort(array)void对数组 array 的元素进行排序toString(array)String把一个数组 array 转换成一个字符串fill(array,…

获取接口的所有实现

一、获取接口所有实现类 方法1:JDK自带的ServiceLoader实现 ServiceLoader是JDK自带的一个类加载器,位于java.util包当中,作为 A simple service-provider loading facility。 (1)创建接口 package com.example.dem…

ArcGIS API for JavaScript 4.x 教程(四) 添加点、线和多边形

了解如何在地图中显示点、线和多边形图形。 图形是用于在地图或场景中显示点、线、多边形和文本的视觉元素。图形由几何图形、符号和属性组成,单击时可以显示弹出窗口。您通常使用图形来显示未连接到数据库(即GPS位置)的地理数据。 在本教程…

Springboot中拦截GET请求获取请求参数验证合法性

目录 目的 核心方法 完整代码 创建拦截器 注册拦截器 测试效果 目的 在Springboot中创建拦截器拦截所有GET类型请求,获取请求参数验证内容合法性防止SQL注入(该方法仅适用拦截GET类型请求,POST类型请求参数是在body中,所以下面…

K8S资源管理方式

K8S资源管理方式 文章目录 K8S资源管理方式一、陈述式资源管理1.基础命令操作2.创建pod3.查看资源状态4.查看pod中的容器日志5.进入pod中的容器6.删除pod资源7.pod扩容8.项目生命周期管理(创建-->发布-->更新-->回滚-->删除)8.1创建services…

3.1 计算机网络和网络设备

数据参考:CISP官方 目录 计算机网络基础网络互联设备网络传输介质 一、计算机网络基础 1、ENIAC:世界上第一台计算机的诞生 1946年2月14日,宾夕法尼亚大学诞生了世界上第一台计算机,名为电子数字积分计算机(ENIAC…

准确率、召回率和F1数值区别

目录 准确率、召回率和F1数值 准确率、召回率和F1数值 一、准确率与召回率(Precision & Recall) 准确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,用来评价结果的质量。 其中精度是检索出相关文档数与检索出的文档总数的比率,衡量的是检索系统的查准…

【Autolayout案例02-距离四周边距 Objective-C语言】

一、好,来看第二个案例 1.第二个案例,是什么意思呢,第二个案例,要求屏幕中间,有一个UIView UIView,是个红色的UIView UIView的大小,我不限定 但是无论你是什么屏幕下 这个UIView距离上边,始终是50 距离右边,始终是50, 距离下边,始终是50, 距离左边,始终是5…

Nginx跳转模块——location与rewrite

一、location 1、location作用 用于匹配uri(文件、图片、视频) uri:统一资源标识符。是一种字符串标识,用于标识抽象的或物理资源文件、图片、视频 2、locatin分类 1、精准匹配:location / {...} 2、一般匹配&a…

PROFINET转DeviceNet网关普通网线能代替profinet吗

捷米JM-DNT-PN这款神器,连接PROFINET和DeviceNet网络,让两边数据轻松传输。 这个网关不仅从ETHERNET/IP和DEVICENET一侧读写数据,还可以将缓冲区数据交换,这样就可以在两个网络之间愉快地传递数据了!而且,…

虚幻引擎游戏开发过程中,游戏鼠标如何双击判定?

UE虚幻引擎对于游戏开发者来说都不陌生,市面上有47%主机游戏使用虚幻引擎开发游戏。作为是一款游戏的核心动力,它的功能十分完善,囊括了场景制作、灯光渲染、动作镜头、粒子特效、材质蓝图等。本文介绍了虚幻引擎游戏开发过程中游戏鼠标双击判…

CSDN付费专栏写作协议

一、总则 1.1、欢迎您选用CSDN付费专栏服务(“本服务”)。以下所述条款和条件即构成您与CSDN就使用本服务所达成的协议(“本协议)。本协议被视为《CSDN用户服务条款》(链接:https://passport.csdn.net/ser…

springboot+mybatis实现简单的增、删、查、改

这篇文章主要针对java初学者,详细介绍怎么创建一个基本的springboot项目来对数据库进行crud操作。 目录 第一步:准备数据库 第二步:创建springboot项目 方法1:通过spring官网的spring initilizer创建springboot项目 方法2&am…

JavaScript基础 第三天

1.for循环 2.数组的基本使用和操作 3.数组排序 一.for循环 ① 语法&#xff1a;把声明起始值&#xff0c;循环条件&#xff0c;变量值写到一起&#xff0c;让人一目了然 for(变量起始值;终止条件;变量变化量) {// 循环体 }举例&#xff1a; for (let i 0; i < 100; i)…

SQL SERVER ip地址改别名

SQL server在使用链接服务器时必须使用别名&#xff0c;使用ip地址就会把192.188.0.2这种点也解析出来 解决方案&#xff1a; 1、物理机ip 192.168.0.66 虚拟机ip 192.168.0.115 2、在虚拟机上找到 C:\Windows\System32\drivers\etc 下的 &#xff08;我选中的文件&a…

批量打印-----jsPDF将图片转为pdf,并合并pdf

注意一、 使用jspdf将图片&#xff08;jpg/jpeg/png/bmp&#xff09;转pdf&#xff08;记为pdfA&#xff09;&#xff0c;得到的pdf&#xff08;pdfA&#xff09;和需要合并的pdf(记为pdfB)类型不一致&#xff0c;需要将pdfA转为pdfB类型&#xff0c;才能合并&#xff0c;使用a…

C#与C/C++交互(1)——需要了解的基础知识

【前言】 C#中用于实现调用C/C的方案是P/Invoke&#xff08;Platform Invoke&#xff09;&#xff0c;让托管代码可以调用库中的函数。类似的功能&#xff0c;JAVA中叫JNI&#xff0c;Python中叫Ctypes。 常见的代码用法如下&#xff1a; [DllImport("Test.dll", E…

修改IDEA的idea.vmoptions参数导致IDEA无法打开(ReservedCodeCacheSize)

事发原因 Maven导依赖的时候OOM&#xff0c;因此怀疑是内存太小&#xff0c;尝试修改idea.vmoptions的参数&#xff0c;然后发现IDEA重启后打不开了&#xff0c;卸载重装后也无法打开。。。 实际上如果导包爆出OOM的话应该调整下图参数&#xff0c;不过这都是后话了 解决思路…

【从零开始学习JAVA | 第四十四篇】TCP协议中的握手与挥手

前言&#xff1a; TCP&#xff08;传输控制协议&#xff09;作为计算机网络中的重要协议&#xff0c;扮演着确保数据可靠传输的角色。在TCP的通信过程中&#xff0c;握手与挥手问题是不可忽视的关键环节。握手是指在建立连接时&#xff0c;客户端与服务器相互确认彼此的身份并…

【学习FreeRTOS】第1章——FreeRTOS入门

1.裸机与RTOS介绍 1.1.裸机与RTOS引入&#xff08;举例&#xff09; 设定情景&#xff1a;小明同学一边打游戏一边恢复女友消息&#xff0c;中途突然肚子疼要上医院 裸机的抽象表达 当紧急情况时&#xff0c;如果当前正在打游戏&#xff0c;那么小明只能打游戏和回复信息的流…