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

【Linux学习笔记】Linux基本指令分析和权限的概念

【Linux学习笔记】Linux基本指令分析和权限的概念

🔥个人主页大白的编程日记

🔥专栏Linux学习笔记


文章目录

  • 【Linux学习笔记】Linux基本指令分析和权限的概念
    • 前言
    • 一. 指令的分析
      • 1.1 alias 指令
      • 1.2 grep 指令
      • 1.3 zip/unzip 指令
      • 1.4 tar指令(重要)
      • 1.5 bc指令
      • 1.6 uname-r指令
      • 1.7 关机
    • 二.shell命令以及运行原理
    • 三.Linux权限的概念
    • 后言

前言

哈喽,各位小伙伴大家好!上期我们讲了Linux基本指令及其分析(二) 今天我们讲的是Linux基本指令分析和权限的概念。话不多说,我们进入正题!向大厂冲锋!
在这里插入图片描述

一. 指令的分析

1.1 alias 指令

功能: 设置命令的别名
举例:

[qcj@bite - alicloud test] $ alias hello = 'ls -a -l -n'
[qcj@bite - alicloud test]$ which hello
alias hello = 'ls -a -l -n'
/ usr / bin / ls
[qcj@bite - alicloud test]$ hello
total 36
drwxrwxr - x  2 1003 1003  4096 Jan 11 17:59 .
drwx------ 22 1003 1003  4096 Jan 11 17 : 57 .. 
- rw - rw - r--  1 1003 1003 28667 Jan 11 18 : 29 temp.txt

1.2 grep 指令

语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:

  • -i:忽略大小写的不同,所以大小写视为相同
  • n:顺便输出行号
  • v:反向选择,亦即显示出没有’搜寻字符串’内容的那一行
# ⽂件内容
[whb@bite - alicloud test]$ cat temp.txt
abcd
ABCD
hello
bite
1234
#基本查找
[whb@bite - alicloud test]$ grep "abcd" temp.txt
abcd
# 忽略⼤⼩写的不同,所以⼤⼩写视为相同
[whb@bite - alicloud test]$ grep - i "abcd" temp.txt
abcd
ABCD
# 顺便输出⾏号
[whb@bite - alicloud test]$ grep - n "abcd" temp.txt
1:abcd
[whb@bite - alicloud test]$ grep - ni "abcd" temp.txt
1 : abcd
2 : ABCD
# 反向选择,亦即显⽰出没有'搜寻字符串' 内容的那⼀⾏
[whb@bite - alicloud test]$ grep - v "abcd" temp.txt
ABCD
hello
bite
1234
[whb@bite - alicloud test]$ grep - vn "abcd" temp.txt
2:ABCD
3 : hello
4 : bite
5 : 1234
[whb@bite - alicloud test]$ grep - vni "abcd" temp.txt
3 : hello
4 : bite
5 : 1234

1.3 zip/unzip 指令

语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常用选项

  • r:递归处理,将指定目录下的所有文件和子目录一并处理
    举例
    将test2目录压缩:zip test2.zip test2/*
    解压到tmp目录:unzip test2.zip -d /tmp
    关于 rzsz
    这个工具用于 windows 机器和远端的 Linux机器通过 XShell 传输文件,安装完毕之后可以通过拖拽的方式将文件上传过去
 sudo yum/apt install -y lrzlz

现场演示windows和Linux如何互传文件

1.4 tar指令(重要)

打包/解包,不打开它,直接看内容
语法: tar[-cxtzjvf] 文件与目录 …
参数:

  • c:建立一个压缩文件的参数指令(create 的意思);
  • x:解开一个压缩文件的参数指令!
  • t:查看 tarfile 里面的文件!
  • z:是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
  • j:是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
  • v:压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
  • f:使用档名,请留意,在f之后要立即接档名喔!不要再加参数!
  • C:解压到指定目录
    案例:
    范例一:将整个/etc目录下的文件全部打包成为’/tmp/etc.tar
[root@linux ~] $ tar - cvf / tmp / etc.tar / etc <= =仅打包,不压缩!
[root@linux ~]$ tar - zcvf / tmp / etc.tar.gz / etc <= =打包后,以gzip压缩
[root@linux ~]$ tar - jcvf / tmp / etc.tar.bz2 / etc <= =打包后,以bzip2压缩

特别注意,在参数f之后的文件档名是自己取的,我们习惯上都用.tar 来作为辨识。
如果加z参数,则以.tar.gz或.tgz来代表 gzip 压缩过的 tar file ~
如果加j参数,则以 .tar.bz2 来作为附档名啊~
上述指令在执行的时候,会显示一个警告讯息:
Г`tar: Removingleading`/"from member names`』那是关于绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz文件内有哪些文件?

 [root@linux ~]$ tar -ztvf /tmp/etc.tar.gz

由于我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,就得要加上z这个参数了!这很重要的!

范例三:将 /tmp/etc.tar.gz文件解压缩在 /usr/local/src 底下

[root@linux ~]$ cd /usr/local/src[root@linux src]$ tar -zxvf /tmp/etc.tar.gz

在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,我先将工作目录变换到/usr/local/src 底下,并且解开 /tmp/etc.tar.gz,则解开的目录会在/usr/local/src/etc呢!另外,如果您进入/usr/local/src/etc
则会发现,该目录下的文件属性与 /etc/可能会有所不同喔!

范例四:在 /tmp 底下,我只想要将/tmp/etc.tar.gz内的 etc/passwd 解开而已

[root@linux ~]$ cd /tmp[root@linux tmp]$ tar -zxvf /tmp/etc.tar.gz etc/passwd

我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,就可以透过这个方式来下达!注意到! etc.tar.gz内的根目录/是被拿掉了!

范例五:将 /etc/内的所有文件备份下来,并且保存其权限!

[root@linux ~]$ tar -zxvpf /tmp/etc.tar.gz /etc# 这个 -p 的属性是很重要的,尤其是当您要保留原本⽂件的属性时!

范例六:在/home 当中,比2005/06/01新的文件才备份

[root@linux ~]$ tar -N "2005/06/01" -zcvf home.tar.gz /home

范例七:我要备份/home,/etc,但不要/home/dmtsai

[root@linux ~]$ tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

范例八:将/etc/打包后直接解开在 /tmp 底下,而不产生文件!

[root@linux ~]$ cd /tmp[root@linux tmp]$ tar -cvf - /etc | tar -xvf 

这个动作有点像是 cp -r/etc /tmp 啦~依旧是有其有用途的!
要注意的地方在于输出档变成-而输入档也变成-,又有一个存在~
这分别代表 standard output,standard input 与管线命令啦!
现场演示如何在Linux和Linux之间互传压缩包

1.5 bc指令

bc命令可以很方便的进行浮点运算

1.6 uname-r指令

语法: uname[选项]
功能: uname用来获取电脑和操作系统的相关信息。
补充说明: uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。
常用选项:

  • a或-all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

重要的几个热键[Tab],[ctrl]-c,[ctrl]-d
[Tab]按键—具有『命令补全』和『档案补齐』的功能
[Ctrl]-c按键—让当前的程序『停掉」
[Ctrl]-d按键—通常代表着:『键盘输入结束(End Of File,EOF 戒 End Oflnput)』的意思;另外,他也可以用来取代exit

1.7 关机

语法: shutdown[选项
常见选项:

  • h:将系统的服务停掉后,立即关机。
  • r:在将系统的服务停掉之后就重新启动
  • tsec:-t后面加秒数,亦即『过几秒后关机』的意思

以下命令作为扩展

  • 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、 last;
  • 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
  • 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
  • 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、
    mail、nslookup;
  • 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
  • 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

二.shell命令以及运行原理

Linux严格意义上说的是一个操作系统,我们称之为“核心(kernel),但我们一般用户,不能直接使用kernel。而是通过kernel的“外壳”程序,也就是所谓的shell,来与kernel沟通。如何理解?为什么不能直接使用kernel?

从技术角度,Shell的最简单定义:命令行解释器(commandInterpreter)主要包含:

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

对比windowsGUl,我们操作windows不是直接操作windows内核,而是通过图形接口,点击,从而完成我们的操作(比如进入D盘的操作,我们通常是双击D盘盘符.或者运行起来一个应用程序)
shell对于Linux,有相同的作用,主要是对我们的指令进行解析,解析指令给Linux内核。反馈结果在通过内核运行出结果,通过shell解析给用户。帮助理解:如果说你是一个闷骚且害羞的程序员,那shell就像媒婆,操作系统内核就是你们村头漂亮的且有让你心动的MM小花。你看上了小花,但是有不好意思直接表白,那就让你你家人找媒婆帮你提亲,所有的事情你都直接跟媒婆沟通,由媒婆转达你的意思给小花,而我们找到媒婆姓王,所以我们叫它王婆,它对应我们常使用的bash。

三.Linux权限的概念

Linux下有两种用户:超级用户(root)、普通用户。

  • 超级用户:可以再linux系统下做任何事情,不受限制
  • 普通用户:在linux下做有限的事情。
  • 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。
    命令: su[用户名]
    功能: 切换用户。
    例如,要从root用户切换到普通用户user,则使用suuser。要从普通用户user切换到root用户则使用suroot(root可以省略),此时系统会提示输入root用户的口令。

后言

这就是Linux基本指令分析和权限的概念。大家自己好好消化!今天就分享到这!
感谢各位的耐心垂阅!咱们下期见!拜拜~

相关文章:

【Linux学习笔记】Linux基本指令分析和权限的概念

【Linux学习笔记】Linux基本指令分析和权限的概念 &#x1f525;个人主页&#xff1a;大白的编程日记 &#x1f525;专栏&#xff1a;Linux学习笔记 文章目录 【Linux学习笔记】Linux基本指令分析和权限的概念前言一. 指令的分析1.1 alias 指令1.2 grep 指令1.3 zip/unzip 指…...

Git基础之分支

常用指令 git branch 列出本地所有分支 git branch -r 列出所有远程分支 git branch [branch-name] 新建一个分支&#xff0c;但依然停留在当前分支 git checkout -b [branch] 新建一个分支&#xff0c;并切换到该分支 git merge [branch] 合并指定分支当前分支 git branch -d …...

MAC电脑常用操作

环境&#xff1a;M3芯片 &#xff0c;macOS15.2 &#x1f680; 快捷键 &#x1f5a5;️ 窗口管理 ✅ 退出/进入全屏模式 • 浏览器等应用&#xff1a;⌘ Command Ctrl F ✅ 最小化当前窗口 • ⌘ Command M • &#x1f4a1; 隐藏窗口但保留应用在后台运行 ✅ 关闭当前标…...

【计算机网络】深入解析 HTTP 协议的概念、工作原理和通过 Fiddler 抓包查看 HTTP 请求/响应的协议格式

网络原理— HTTP 1. 什么是HTTP? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议&#xff1a; HTTP 往往是基于传输层的 TCP 协议实现的 (HTTP1.0,HTTP1.1,HTTP2.0 均为TCP,HTTP3基于UDP实现) 我们平时打开一个网站&#xff0c;就是通过HTTP协议来…...

Springboot redis bitMap实现用户签到以及统计,保姆级教程

项目架构&#xff0c;这是作为demo展示使用&#xff1a; Redis config&#xff1a; package com.zy.config;import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; import com.fasterxml.jackson.databind.Ob…...

【C++】:STL详解 —— 红黑树封装map和set

目录 红黑树的源代码 正向迭代器的代码 反向迭代器的代码 set的模拟实现 map的模拟实现 红黑树的源代码 #pragma once #include <iostream>using namespace std; // set ->key // map ->key/value// set ->key // map ->key/valueenum Colour {RED,BLAC…...

FPGA设计时序约束用法大全保姆级说明

目录 一、序言 二、时序约束概览 2.1 约束五大类 2.2 约束功能简述 2.3 跨时钟域约束 三、时序约束规范 3.1 时序约束顺序 3.2 约束的优先级 四、约束示例 4.1 设计代码 4.2 时序结果 4.2.1 create_clock 4.2.2 create_generated_clock 4.2.3 Rename_Auto-Derive…...

【前缀和与差分 C/C++】洛谷 P8218 求区间和

2025 - 03 - 09 - 第 72 篇 Author: 郑龙浩 / 仟濹 【前缀和与差分 C/C】 文章目录 洛谷 P8218 求区间和题目描述输入格式输出格式输入输出样例 #1输入 #1输出 #1 说明/提示思路代码 洛谷 P8218 求区间和 题目描述 给定 n n n 个正整数组成的数列 a 1 , a 2 , ⋯ , a n a_…...

C++修炼之路:初识C++

Hello大家好&#xff01;很高兴我们又见面啦&#xff01;给生活添点passion&#xff0c;开始今天的编程之路&#xff01; 我的博客&#xff1a;<但凡. 我的专栏&#xff1a;《编程之路》、《数据结构与算法之美》、《题海拾贝》 欢迎点赞&#xff0c;关注&#xff01; 引言 …...

Pytorch 第九回:卷积神经网络——ResNet模型

Pytorch 第九回&#xff1a;卷积神经网络——ResNet模型 本次开启深度学习第九回&#xff0c;基于Pytorch的ResNet卷积神经网络模型。这是分享的第四个卷积神经网络模型。该模型是基于解决因网络加深而出现的梯度消失和网络退化而进行设计的。接下来给大家分享具体思路。 本次…...

2025-3-9 一周总结

目前来看本学期上半程汇编语言,编译原理,数字电路和离散数学是相对重点的课程. 在汇编语言和编译原理这块,个人感觉黑书内知识点更多,细节更到位,体系更完整,可以在老师讲解之前进行预习 应当及时复习每天的内容.第一是看书,然后听课,在一天结束后保证自己的知识梳理完整,没有…...

如何在el-input搜索框组件的最后面,添加图标按钮?

1、问题描述 2、解决步骤 在el-input组件标签内&#xff0c;添加一个element-plus的自定义插槽&#xff0c; 在插槽里放一个图标按钮即可。 3、效果展示 结语 以上就是在搜索框组件的末尾添加搜索按钮的过程。 喜欢本篇文章的话&#xff0c;请关注本博主~~...

[项目]基于FreeRTOS的STM32四轴飞行器: 六.2.4g通信

基于FreeRTOS的STM32四轴飞行器: 六.2.4g通信 一.Si24Ri原理图二.Si24R1芯片手册解读三.驱动函数讲解五.移植2.4g通讯&#xff08;飞控部分&#xff09;六.移植2.4g通讯&#xff08;遥控部分&#xff09; 一.Si24Ri原理图 Si24R1芯片原理图如下&#xff1a; 右侧为晶振。 模块…...

Python爬取咸鱼Goodfish店铺所有商品接口的详细指南

在电商数据分析和市场研究中&#xff0c;爬取咸鱼店铺内的所有商品信息是一项极具价值的任务。通过调用咸鱼的goodfish.item_search_shop接口&#xff0c;可以获取指定店铺内的商品列表&#xff0c;包括商品标题、价格、图片链接、销量等详细信息。本文将详细介绍如何使用Pytho…...

【极光 Orbit•STC8A-8H】03. 小刀初试:点亮你的LED灯

【极光 Orbit•STC8H】03. 小刀初试&#xff1a;点亮你的 LED 灯 七律 点灯初探 单片方寸藏乾坤&#xff0c;LED明灭见真章。 端口配置定方向&#xff0c;寄存器值细推敲。 高低电平随心控&#xff0c;循环闪烁展锋芒。 嵌入式门初开启&#xff0c;从此代码手中扬。 摘要 …...

docker本地部署RagFlow

1.安装 克隆仓库 git clone https://github.com/infiniflow/ragflow.git构建预建的Docker映像并启动服务器 cd ragflow/docker chmod x ./entrypoint.sh docker compose -f docker-compose.yml -p ragflow up -d修改ragflow/docker/.env文件 #RAGFLOW_IMAGEinfiniflow/ragfl…...

STM32F4 UDP组播通信:填一填ST官方HAL库的坑

先说写作本文的原因&#xff0c;由于开项目开发中需要用到UDP组播接收的功能&#xff0c;但是ST官方没有提供合适的参考&#xff0c;使用STM32CubeMX生成的代码也是不能直接使用的&#xff0c;而我在网上找了一大圈&#xff0c;也没有一个能够直接解决的方案&#xff0c;deepse…...

基于python大数据的招聘数据可视化与推荐系统

博主介绍&#xff1a;资深开发工程师&#xff0c;从事互联网行业多年&#xff0c;熟悉各种主流语言&#xff0c;精通java、python、php、爬虫、web开发&#xff0c;已经做了多年的设计程序开发&#xff0c;开发过上千套设计程序&#xff0c;没有什么华丽的语言&#xff0c;只有…...

10. 【.NET 8 实战--孢子记账--从单体到微服务--转向微服务】--微服务基础工具与技术--Ocelot 网关--认证

在微服务架构中&#xff0c;通过在网关层实现身份认证、权限校验和数据加密&#xff0c;可以有效防范恶意攻击和非法访问&#xff0c;保障内部服务安全。采用JWT、OAuth等主流认证机制&#xff0c;使每次请求均经过严格验证&#xff0c;降低安全漏洞风险。同时&#xff0c;统一…...

DeepSeek 3FS:端到端无缓存的存储新范式

在 2025 年 2 月 28 日&#xff0c;DeepSeek 正式开源了其高性能分布式文件系统 3FS【1】&#xff0c;作为其开源周的压轴项目&#xff0c;3FS 一经发布便引发了技术圈的热烈讨论。它不仅继承了分布式存储的经典设计&#xff0c;还通过极简却高效的架构&#xff0c;展现了存储技…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

基于 TAPD 进行项目管理

起因 自己写了个小工具&#xff0c;仓库用的Github。之前在用markdown进行需求管理&#xff0c;现在随着功能的增加&#xff0c;感觉有点难以管理了&#xff0c;所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD&#xff0c;需要提供一个企业名新建一个项目&#…...

音视频——I2S 协议详解

I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议&#xff0c;专门用于在数字音频设备之间传输数字音频数据。它由飞利浦&#xff08;Philips&#xff09;公司开发&#xff0c;以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...