3-Linux实操

Linux实践操作

  • 开关机、重启、用户登陆注销
    • 关机&重启
    • 用户登陆和注销
  • 用户管理
    • 添加用户
    • 修改用户密码
    • 删除用户
    • 查询用户信息
    • 切换用户
    • 查看当前用户
    • 用户组的添加和删除
    • 用户和组相关文件
  • 实用指令
    • 指定运行级别
    • init 命令
    • 帮助指令
    • 文件目录类
    • 时间日期类
    • 搜索查找类🔍
    • 压缩和解压类

开关机、重启、用户登陆注销

关机&重启

  • 关机&重启之前的操作
    • sync 把内存的数据同步到磁盘上
  • 关机指令
    • shutdown -h now 立刻关机
    • shutdown -h 1 1分钟后关机
    • halt 关机
  • 重启指令
    • shutdown -r now 立刻重新启动计算机
    • reboot 重启

用户登陆和注销

注销只能在shell环境下进行使用

  • 登陆
    • 登陆普通用户 su - 用户名
    • 登陆root用户 sudo su 或者 su -root
  • 注销
    • 退出当前用户 logout

用户管理

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

添加用户

useradd 用户名

添加一个系统操作用户,当用户创建成功后,会自动在home目录下创建和用户同名的目录

useradd -d 指定目录 新的用户名

给新创建的用户指定存储路径,而不是存储在/home目录下(-d d就是directory 目录的意思)

image.png|center|600

修改用户密码

passwd 用户名
# 如果不加用户名,则默认是修改当前用户的密码

image.png|center|600

删除用户

现在的系统用户列表如下所示:
image.png|center|600

  • 删除用户但要保留用户文件
userdel 用户名 
  • 删除用户同时删除用户文件
userdel -r 用户名

查询用户信息

id 用户名

image.png|center|600

切换用户

如果当前用户的权限不够,可以通过 su - 用户名,切换到高权限用户,比如root用户

su - 切换用户名

❗️❗️注意:

  • 从权限高的用户切换到权限低的用户,不需要输入密码,如果从权限低的切换到权限高的用户,则需要输入切换的用户密码
  • 当需要返回到原来的用户时,可以使用exit/logout指令,进行退出

查看当前用户

whoami 或者 who am I

image.png|center|600

  • who am i 这个指令,显示的是第一次登陆系统的用户,如果通过su指令进行了用户的切换,则仍然会是第一次登陆系统的用户。

  • whoami 这个指令则会显示目前正在进行操作的用户

image.png|center|600

用户组的添加和删除

^ec4c90

用户组的作用在于:系统可以对有共性【权限】的多用户进行统一的管理

image.png|center|600

  • 新增组
    • groupadd 组名
  • 删除组
    • groupdel 组名
  • 增加用户时直接加上组
    • useradd -g 用户组 用户名

❗️❗️注意: 如果在增加用户时,没有指定组,则会在创建用户时,同时创建一个名为用户名的组。

image.png|center|600

  • 修改用户的组
    • usermod -g 用户组 用户名

用户和组相关文件

![[1-Linux目录结构#^4af414]]

  • /etc/passwd 文件

    • 用户user的配置文件,记录用户的各种信息
    • 每行信息的含义
    • 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登陆shell【[[shell编程|shell介绍]]】
    • image.png
  • /etc/shadow文件

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

    • 组的配置文件,记录Linux包含组的信息
    • 每行的含义
    • 组名:口令:组标识号:组内用户列表

❗️❗️注意:口令一般是不可见的,表示形式为x或为空。

实用指令

指定运行级别

运行级别级别含义
0关机
1单用户状态(找回丢失的密码)
2多用户状态没有网络服务
3多用户状态有网络服务
4系统未使用保留给用户
5图形界面
6系统重启

init 命令

通过init命令来切换不同的运行级别

比如:init [0123456] 然后关机,再启动即可进行切换

比如 init 0 表示关机; init 6 表示系统重启

帮助指令

  • man 获得帮助信息
    • man [命令或配置文件]
    • 比如:查看 ls 命令的帮助信息 :man ls
    • 选项可以进行组合使用,比如组合 ls -a 和 ls -l 为: ls -al 或 ls -la 都可以
    • image.png|left|700
  • help 指令
    • 语法: help 命令
    • 获得shell内置命令的帮助信息
    • 查看cd命令的帮助信息
      • image.png|left|800

文件目录类

  • pwd 指令

    • 显示当前工作目录的绝对路径
    • image.png
  • ls指令

    • ls [选项] [目录或者文件]
    • 常用选项
      • -a:显示当前目录所有的文件和目录,包括隐藏的
      • -l :以列表的方式进行显示信息
  • cd 指令

    • 切换到指定目录
    • cd [参数]
      • cd ~ :回到自己的家目录中
      • cd … : 回到上一级目录
  • mkdir 指令

    • 创建目录
    • mkdir [选项] 要创建的目录
    • 常用选项
      • -p : 创建多级目录
    • image.png
  • rmdir 指令

    • 删除空目录
    • rmdir [选项] 要删除的空目录
    • ❗️删除的是空目录,如果目录下有内容时,则无法进行删除
  • 删除非空目录

    • rm -rf 要删除的目录
      • -r ( -R, --recursive):递归地删除目录及其内容
      • -f ( --force ): 强制删除,忽略是否有文件和相关参数
  • touch 指令

    • 创建空文件
    • touch 文件名
  • cp 指令

    • cp指令拷贝文件到指定目录
    • cp [选项] source dest
      • source 拷贝的源文件名
      • dest 拷贝到的目的位置
    • 常用选项
      • -r : 递归复制整个文件夹
    • 注意❗️:
      • 强制覆盖不提示的方法,在cp前面加上\
      • 例如:\cp 源文件 目的位置
  • rm 指令

    • 移除文件或目录
    • rm [选项] 要删除的文件或目录
    • 常用选项
      • -r ( -R, --recursive):递归地删除目录及其内容
      • -f ( --force ): 强制删除,忽略是否有文件和相关参数
    • 举例:删除非空目录
      • rm -rf 要删除的目录
      • 强制删除不提示的方法带上 -f 参数即可
  • mv 指令

    • 移动文件或目录 或 重命名
    • 重命名: mv oldname newname (在同一个目录下,才可以进行重命名)
    • 移动文件: mv 移动文件 目标目录 (不在同一个目录下,进行文件的移动操作)
  • cat 指令

    • 查看文件的内容
    • cat [选项] 要查看的文件
    • 常用选项
      • -n : 显示行号
    • ❗️注意:
      • 为了浏览方便,一般会带上 管道命令 | 其他指令
      • 例如: cat -n /etc/profile | [其他命令]
  • more 指令

    • 基于VI编辑器的文本过滤器,可以以全屏幕的方式,按页显示文本文件的内容。
    • more 要查看的文件
    • 使用more以后,可以使用的交互指令:
      • image.png|left|600
  • less 指令

    • 分屏查看文件内容,less指令在显示文件内容时,并不是将整个文件加载之后才显示,而是根据显示需要,加载的内容,对于显示大型文件具有较高的效率
    • less 需要显示的文件
    • 使用less以后,可以使用的交互指令:
      • image.png|left|600
      • 当输入/要查找的字符串时,查找到以后,输入n,可以继续向下查找匹配的字符串,输入N,可以继续向上查找匹配的字符串
      • 当输入?要查找的字符串时,查找到以后,输入n,可以继续向上查找匹配的字符串,输入N,可以继续向下查找匹配的字符串
  • echo 指令

    • 输入内容到控制台
    • echo [选项] [输出内容]
  • head 指令

    • 用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行
    • 基本语法
      • head 文件名
      • head -n 5 文件名 查看文件头5行内容
  • tail 指令

    • 用于输出文件尾部内容,默认情况下,tail指令显示文件的前10行内容
    • 基本语法
      • tail 文件 查看尾部后10行的内容
      • tail -n 5 文件 查看尾部后5行的内容
      • tail -f 文件 实时追踪该文件的更新
  • > 指令

    • 输出重定向指令
    • 基础语法
      • ls -l > 文件 将列表的内容写入文件
      • cat file1 > file2 将文件1的内容覆盖到文件2中
  • >> 指令

    • 追加指令
    • 基础语法
      • ls -al >> 文件 将列表内容追加到文件的末尾
      • echo 内容 >> 文件 在文件尾部追加内容
  • ln 指令

    • 软链接,也称为符号链接,类似于windows中的快捷方式。
    • ln -s [原文件或目录] [软链接名]
      • 给一个原文件创建一个软链接
    • image.png|left|600
  • history 指令

    • 查看已经执行过的历史命令,也可以执行历史命令
    • history 显示所有的历史命令
    • history 10 显示最近的十条指令
    • !5 执行历史编号为5的指令

时间日期类

写shell脚本输出日志时可能会用到

  • data指令
    • 显示当前日期📅
    • 基本语法
      • date 显示当前日期
      • date "+%Y" 显示当前年份
      • date "+%m" 显示当前月份
      • date "+%d" 显示当前的天
      • date "+%Y-%m-%d %H:%M:%S" 具体到今天的每一分,每一秒。
    • 可选选项(设置日期)
      • data -s 字符串时间
  • cal 指令
    • 查看日历📅

搜索查找类🔍

  • find 指令
    • find指令将从指定目录向下递归地遍历各个子目录,将满足条件的文件或目录显示在终端
    • 基本语法:find [搜索范围] [选项]
    • 选项说明
      • -name 文件名 按照指定的文件名查找文件
      • -user 用户名 查找属于指定用户名的所有文件
      • -size 文件大小 按照指定的文件大小查找文件
        • 注意
          • 大于 - 小于 = 等于
        • 单位有: k M G
    • 比如:查找/home目录下的hello.txt文件
      • find /home -name hello.txt
  • locate 指令
    • lacate指令可以快速定位文件路径,locate指令利用事先建立的系统中所有文件名称以及路径的locate数据库实现快速定位到给定的文件。locate指令无需便利整个文件系统,查询速度较快。
    • 注意:为了保证查询结果的准确度,管理员必须定期更新locate时刻。
    • 基本语法:locate 文件名称
    • 💡:由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库
  • which指令
    • 可以查看某个指令在哪个目录下
    • 例如: which ls
  • find 🆚 locate
    • find是在硬盘上查找
    • locate是在数据库中查找
  • grep指令和管道符号 |
    • grep 过滤查找
    • 管道符号:用于将前一个命令的处理结果输出给后面的命令进行处理。
    • 基本语法:grep [选项] 查找内容 源文件
    • 常用选项
      • -n : 显示匹配行以及行号
      • -i : 忽略字母大小写
    • 📋比如:在hello.txt 中,查找yes 所在行,并显示行号
      • 1⃣️ cat hello.txt | grep "yes"
      • 2⃣️ grep -n "yes" hello.txt
    • image.png|left|600

压缩和解压类

  • gzip 和 gunzip

    • gzip: 压缩文件 ,gunzip :解压文件
    • 仅仅是对文件进行操作,不包含目录
    • 基本语法:
      • gzip 文件 : 压缩文件,只能将文件压缩为*.gz文件
      • gunzip 文件.gz : 解压.gz文件
  • zip 和 unzip

    • 解压和压缩文件
    • 基本语法
      • zip [选项] xxx.zip 要压缩的内容 压缩文件和目录的命令
      • unzip [选项] xxx.zip 解压缩文件
    • 常用选项
      • zip : -r (recursive): 递归压缩(压缩目录
      • unzip: -d 目录 : 指定解压后文件的存放目录
  • tar 指令 ⭐️⭐️

    • tar是打包指令,最后打包后的文件是.tar.gz的文件
    • 基本语法
      • tar [选项] xxx.tar.gz 打包的内容
    • 选项说明
      • -c 产生.tar 的打包文件(–creat)
      • -v 显示详细信息
      • -f 指定压缩后的文件名
      • -z 打包的时候同时压缩
        • image.png
      • -x 解包.tar 文件(–extract)
    • 压缩文件:-z(gzip)c(产生打包文件)v(显示详细信息)f(指定压缩后的文件夹)
    • 解压文件:-z(gunzip)x(解包.tar文件)v(显示详细信息)f(文件夹)
    • 指定压缩目录和解压目录 -C
      • image.png

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

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

相关文章

Java获取调用当前方法的方法名和行数(亲测可行)

有时候一个方法被很多方法调用了,但是在调试应用程序的时候,需要知道是哪个方法调用它的,方便定位bug问题。否者,比较难以理清和解决一些bug问题。 适用:任何适用java语言编程的地方,java后端和android端。…

随手笔记——3D−3D:ICP求解

随手笔记——3D−3D:ICP求解 使用 SVD 求解 ICP使用非线性优化来求解 ICP 原理参见 https://blog.csdn.net/jppdss/article/details/131919483 使用 SVD 求解 ICP 使用两幅 RGB-D 图像,通过特征匹配获取两组 3D 点,最后用 ICP 计算它们的位…

实用人工智能 2.0,在线“学习、探索和构建”ML 模型

人工智能爱好者过去需要在一个好的GPU上投资数千美元才能“动手”进行机器学习,但现在一个简单的网络浏览器就足够了。总部位于硅谷的非营利组织PracticalAI最近发布了“PracticalAI2.0”,该平台包括TensorFlow 2.0Keras中的说明性机器学习课程&#xff…

嵌入式管理程序

在功能强大的计算机中使用虚拟机管理程序的想法是众所周知的。它有利于同时使用多个操作系统,并提供了可以在其中部署未修改的旧版软件的虚拟化环境。虚拟机管理程序在现代嵌入式系统中也占有一席之地。本文考虑了嵌入式管理程序的特性,它可以提供的功能…

【计算机网络】2.1——物理层(编码波形、奈氏准则和香农公式计算)

物理层 基本概念 概念 物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流 为数据链路层屏蔽了各种传输媒体的差异 数据链路层只需要考虑如何完成本层的协议和服务,而不必考虑网络具体的传输媒体是什么 物理层协议主要任务 机械特性 指明接口所…

计算机网络最基础知识介绍

OSI和TCP/IP是很基础但又非常重要的知识,很多知识点都是以它们为基础去串联的,作为底层,掌握得越透彻,理解上层时会越顺畅。今天这篇网络基础科普,就是根据OSI层级去逐一展开的。 01 计算机网络基础 01 计算机网络的分类 按照网络的作用范围:广域网(WAN)、城域网(MA…

23.7.26总结(博客项目)

接下来要完成: 从主页面点击进入时,通过作者id从数据库查找作者的nickname点击文章收藏(需要有收藏列表)首页还要加最新发布,点赞收藏最多作者名得改成文章作者(通过user_id从user表中拿数据)消…

uniapp:手写签名,多张图合成一张图

要实现的内容&#xff1a;手写签名&#xff0c;协议内容。点击提交后&#xff1a;生成1张图片&#xff0c;有协议内容和签署日期和签署人。 实现的效果图如下&#xff1a; 1、签名页面 <template><view class"index"><u-navbar title"电子协议…

Android播放多媒体文件——播放音频

以下内容摘自郭霖《第一行代码》第三版 播放音频 MediaPlayer类中常用的控制方法 方法名功能描述setDataSource()设置要播放的音频文件的位置prepare()在开始播放之前调用&#xff0c;以完成准备工作start()开始或继续播放音频pause()暂停播放音频reset()将MediaPlayer对象重…

4.11 break、continue、goto

4.11 break、continue、goto break在任何循环语句的主体部分&#xff0c;均可用break控制循环的流程。break用于强行退出循环&#xff0c;不执行循环中剩余的语句。&#xff08;break语句也在switch语句中使用&#xff09; package com.baidu.www.struct;public class BreakDem…

企业级PaaS低代码快开平台源码,基于 Salesforce Platform 的开源替代方案

PaaS低代码快开平台是一种快速开发应用系统的工具&#xff0c;用户通过少量代码甚至不写代码就可以快速构建出各种应用系统。 随着信息化技术的发展&#xff0c;企业对信息化开发的需求正在逐渐改变&#xff0c;传统的定制开发已经无法满足企业需求。低代码开发平台&#xff0…

三分钟带你了解音频转文字哪个好用

在数字世界的角落里&#xff0c;有一项神奇的技术——音频转文字。它隐藏着巨大的力量和惊人的能力。它如同一位神奇的文字解码师&#xff0c;能够将听觉的旋律转化为视觉的符号&#xff0c;让语言的美妙之音在屏幕上跃然纸上。接下来&#xff0c;让我带你进入这个充满奇迹的数…

AQS抽象同步队列核心原理

CLH自旋锁 JUC中显式锁基于AQS抽象队列同步器&#xff0c;而AQS是CLH锁的一个变种。队列头结点可以获得锁&#xff0c;其他节点排队等候。 在争夺锁激烈的情况下&#xff0c;为了减少CAS空自旋&#xff08;CAS需要CPU进行内部通信保证缓存一致性造成流量过大引起总线风暴&…

马上医疗项目介绍

“马上好医”项目白皮书 一、大型医疗挂号微服务“马上好医”医疗项目 “马上好医”即为网上医疗预约挂号系统&#xff0c;首先&#xff0c;由于互联网的发展&#xff0c;衍生出非常多的便民医疗服务的需求&#xff0c;而网上预约挂号则是其中一个便民需求&#xff0c;我们能…

基于Javaweb实现ATM机系统开发实战(十五)退卡和转账跳转实现

首先创建一个servlet接受和处理请求&#xff1a; package com.atm.servlet;import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.annotation.*; import java.io.IOException;//用户退出 WebServlet("/logout") public class ExitServlet ex…

安全渗透初级知识总结

Day1&#xff1a; xss详解&#xff1a;web攻防之XSS攻击详解——XSS简介与类型 - 知乎 (zhihu.com) Cookie&#xff1a;身份验证 网页元素属性&#xff1a; id&#xff1a; class&#xff1a;样式名称 console.log(div_class);----打印标签 tabindex"0"---这是…

JavaScript逻辑运算符

not运算符&#xff08;!&#xff09; 反着来and运算符&#xff08;&&&#xff09; 全true才trueor运算符&#xff08;||&#xff09; 全false才false 举例 const hasDriversLicense true; const Drinking false;console.log(hasDriversLicense && Drinking…

7. Spring Boot 配置文件

目录 1. 配置文件作用 2. 配置文件格式 3. properties 配置文件说明 3.1 properties 基本语法 3.2 读取配置文件 3.3 缺点 4. yml 配置文件说明 4.1 properties 基本语法 4.2 读取配置文件 4.3 yml 配置不同的数据类型 布尔值 整数值 null 值 配置对象 配置集合 …

SpringBoot集成kafka全面实战

本文是SpringBootKafka的实战讲解&#xff0c;如果对kafka的架构原理还不了解的读者&#xff0c;建议先看一下《大白话kafka架构原理》、《秒懂kafka HA&#xff08;高可用&#xff09;》两篇文章。 一、生产者实践 普通生产者 带回调的生产者 自定义分区器 kafka事务提交…

【代码片】Pdf转Image

pdf转图片工具类 import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.rendering.PDFRenderer; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.*;public class Pdf2Png {private final static String type "…