Linux基本指令(三)+ 权限

embedded/2025/2/23 23:42:41/

文章目录

  • 基本指令
    • grep
    • 打包和压缩
      • zip/unzip
      • Linux和windows压缩包互传
      • tar(重要)
      • Linux和Linux压缩包互传
    • bc
    • uname -r
    • 常用的热键
    • 关机
    • 外壳程序
  • 知识点
    • 打包和压缩
  • Linux中的权限
    • 用户权限

基本指令

grep

1. grep可以过滤文本行
done用于标记循环的结束,确保循环体在指定条件下正确执行,下图是一个打印的循环体的脚本

在这里插入图片描述

2. 把包含9的文本行过滤出来了

有三种写法,文本可以带双引号,单引号,或者都不带
root@hcss-ecs-93fe:~/hello# grep "9" log.txt
grep '9' log.txt
grep 9 log.txt

在这里插入图片描述

3. grep -n 可以显示行号,grep -v,逆向的,可以将除匹配成功的以外的文本保留下来

grep -n "9" log.txt
grep -v "9" log.txt
把除9之外的文本保留下来了

在这里插入图片描述

4. grep -i “hello” log.txt,-i选项可以忽略大小写匹配,ignore,也就是大小写都会打印到显示器上

在这里插入图片描述

5. grep -v “hello” log.txt,把不匹配hello的选项显示出来

在这里插入图片描述

6. grep -vi “hello” log.txt,忽略大小写匹配,将匹配失败的显示出来

在这里插入图片描述

7. grep把所有的包含关键字"Removed"并且是从后往前找的10个信息打印出来

在这里插入图片描述

grep "Removed" var/log/messages | tail -10
grep "Removed" var/log/messages

8. ps ajx 可以查看历史进程
在进程中查找"muprocess"

在这里插入图片描述

9. * 匹配当前目录下的所有文件

grep -n "int main" *
在文本中查找指定的行 

在这里插入图片描述
在这里插入图片描述

打包和压缩

zip/unzip

检测zip有没有装上,version版本
在这里插入图片描述

// 安装zip和unzip
apt install -y zip unzip

1. 不带选项只能打包单个文件
2. 比如说目录只能打包这个空目录

zip lesson.zip lesson
// 将lesson打包成lesson.zip
unzip lesson.zip
// 将lesson解压解包到当前文件夹

3. 要打包目录要带上-r选项

zip -r lesson.zip lesson

4. 解压到指定的目录下需要-d选项

// 将lesson.zip解压到指定的/root目录下
unzip lesson.zip -d /root

Linux和windows压缩包互传

安装sz和rz命令
apt install -y lrzsz

1. rz:用于远端设备发送文件到本地计算机(例如windows中的压缩包传到Linux中)
2. sz:用于从本地计算机发送文件到远端设备
(例如Linux中的压缩包传到windows中)

sz hello.zip
// 发送压缩包到windows中

在这里插入图片描述

rz 
// 从windows中接收压缩包到Linux中

在这里插入图片描述

tar(重要)

// 将srcdir打包压缩为xxx.tgz的压缩包
tar 选项 xxx.tgz srcdir

1. 选项:c 新建一个打包文件
z 把打包文件进行压缩
f 指定文档名,使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
x 解开一个压缩文件
2. tar命令默认是递归的

打包压缩文件
tar czf lesson.tgz lesson
解压压缩包
tar xzf lesson.tgz

3. -v选项可以展示解包/压缩的过程并且显示文件

在这里插入图片描述
在这里插入图片描述

4. 创建一万个普通文件

在这里插入图片描述

5. tar xzf lesson.tgz -C /root
将lesson.tgz解压到指定目录下

tar -xzf lesson.tgz -C /root
// 选项的前面可以带-也可以不带-

Linux和Linux压缩包互传

1. scp 远程拷贝的命令
2. 拷贝完之后,需要输入另一台Linux机器的密码,之后就可以在另一台机器上看到压缩包

在这里插入图片描述

bc

1. bc相当与Linux当中简单的计算器

在这里插入图片描述
作用:
在这里插入图片描述

uname -r

1. uname用来获取电脑和操作系统的相关信息
2. uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息
3. -a或‒all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

在这里插入图片描述

  • 怎么在Linux环境下查看你的体系结构和系统内核版本呢?

uname -r
体系结构是指一个系统的基本组织结构,包括其组件、组件之间的关系、组件与外部环境的关系,以及指导系统设计和演进的原则,例如x64,AMD
体系结构就是芯片结构

  1. x86_32 x86_64(x64)
  2. 新老内核的问题
    一般公司都会选择老内核,因为比较稳定

系统内核版本
内核版本号通常由四部分组成:主版本号.次版本号.修订版本号-补丁版本号
红色的为体系结构
蓝色的为内核版本
在这里插入图片描述

常用的热键

1. \ 是续行符,相当于 ls -a -l
2. 如果误触了\,想要马上回到新的命令行,ctrl+c终止当前程序
3. 上下键查看历史命令
4. tab键快速按两下,可以自动地进行命令搜索和命令补全

在这里插入图片描述
tab
在这里插入图片描述

5. ctrl + r搜索历史命令

在这里插入图片描述

6. ctrl + d 退出当前用户
7. history 显示历史命令,Linux会记录我们的历史命令

关机

1.一些关机的命令: shutdown 关机 halt 挂起 reboot 重启
2. 云服务器永不关机,除非维护了或者不用了

shutdown -h 立即关机
shutdown -h -t 秒数 
意味着多少秒关机

外壳程序

在这里插入图片描述
在这里插入图片描述
为什要存在外壳程序:

  • 方便用户操作,用户不能直接访问操作系统,要用Shell作为中间商
  • 如果用户输入了一个错误指令,外壳就把指令拦截了下来,相当于保护了内核

在这里插入图片描述

bash是Linux当中的外壳程序,bash在Linux中是一个死循环,shell是外壳程序的统称

在这里插入图片描述

  • 总结

  • 外壳程序是操作系统外部的一套软件

  • 将使用者的命令翻译给核心(Linux)(kernel)处理

  • 同时,将核心(Linux)的处理结果翻译给使用者

知识点

打包和压缩

  • 什么是打包和压缩 ?

1. 打包:文件合并,将多个文件合并为一个文件
2.压缩:减少体积

  • 为什么要打包和压缩 ?

1.打包:防止文件丢失
2. 压缩:减少体积,节省存储空间,可以有效地减少网络传送的时间

  • 怎么打包和压缩 ?

1. 打包和压缩不做明显的区分,因为在Linux中打包和压缩分开看很麻烦

Linux中的权限

用户权限

1. Linux中的用户:root用户(超级用户)or 普通用户
2. windows:管理员(admin)or 普通用户
3. 超级用户:权限高 普通用户:权限低,受管控

身份切换:普通用户编程超级用户,要输入超级用户的密码
su ->将普通用户转为超级用户

在这里插入图片描述
在这里插入图片描述

  • exit / ctrl + d:都可以从超级用户回退到普通用户或者让普通用户回退到超级用户
  • su:不会让用户重新登录,只是身份的切换,不会影响当前所处的目录,还是当前所处的路径
  • su -:是让用户重新登录了,会让所处的路径发生变化

在这里插入图片描述
在这里插入图片描述

  • who是当前有哪些人在登录
    在这里插入图片描述

  • 超级用户用命令回退到普通用户怎么做?
    1、su 用户名:可以不输密码,直接回退到指定的普通用户

在这里插入图片描述


http://www.ppmy.cn/embedded/164702.html

相关文章

MySQL 一条 SQL 执行流程解析

MySQL 的 SQL 执行过程其实是一个非常复杂的多阶段流程。每当我们在客户端发出一条 SQL 语句时,MySQL 会经过多个步骤来处理并执行它。在这里,我们将详细地介绍 MySQL 执行 SQL 语句的完整流程,从 SQL 语句的解析到结果的返回。 1. 客户端请…

初级渗透测试工程师需要学什么?网络安全零基础入门到精通教程建议收藏!

1、前言 本文主要介绍如何成为一名初级的渗透测试工程师所需要学习的内容,后续也会基于此将自己的学习总结、心得记录下来。相信在不断坚持下,争取在今年五月初成为一名初级的渗透测试工程师。 2、涉及知识领域 基础网络知识: 理解TCP/IP协…

深入解析:在Spring Boot中集成MyBatis Plus实现高效数据库操作

前后端微服务商城项目,手把手教学! 在Spring Boot中集成第三方框架,实际上是非常常见的一种做法。Spring Boot自带了很多开箱即用的功能,但在实际项目开发中,我们经常需要借助一些第三方框架来实现更为复杂的功能。比如…

PHP约课健身管理系统小程序源码

🏋️‍♂️ 约课健身管理系统小程序:重塑健身预约体验,引领数字化健身新时代 一款基于ThinkPHPUniapp框架,由米扬精心雕琢的约课健身管理系统小程序,专为健身房、健身工作室、运动会所、运动场馆、瑜伽馆、拳馆等泛健…

Git常见命令--助力开发

git常见命令: 创建初始化仓库: git 将文件提交到暂存区 git add 文件名 将文件提交到工作区 git commit -m "注释(例如这是发行的版本1)" 文件名 查看状态 如果暂存区没有文件被提交显示: $ git status On…

14.7 LangChain Experimental 模块解析:解锁 Auto-GPT 开发新范式

LangChain Experimental 模块解析:解锁 Auto-GPT 开发新范式 关键词:LangChain Experimental、Auto-GPT 实现、自主智能体开发、Agent 架构设计、实验性功能实践 1. LangChain Experimental 模块的定位与核心能力 模块定位解析: #mermaid-svg-4xz2OlZBUFjkBmqw {font-fami…

MySQL 单表访问方法详解

单表访问 MySQL 单表访问方法详解:高效查询之道**一、 查询执行基础****二、 访问方法 (Access Method) 概念****三、 具体访问方法 (从最优到最差)****四、 注意事项****五、 总结与优化建议****六、 电商网站数据存储应用示例****七、 数据备份与恢复模型 (补充)*…

IDEA CodeGPT 使用教程

IDEA CodeGPT 使用教程 CodeGPT 是一个 IntelliJ IDEA 插件,可以利用 OpenAI(或自建 AI 模型)来帮助开发者完成代码编写、优化、调试、解释错误等任务。以下是详细的安装与配置教程。 1. 安装 CodeGPT 插件 方式 1:从插件市场安…