【完-网络安全】Shell与脚本

文章目录
- 1.CLI与GUI
- 2.终端和Shell
- 2.1 Shell 壳层
- 2.2 终端
- 2.3 终端和Shell区别
- 3.标准流
- 4.PowerShell
- 4.1 管理员与非管理员
- 4.2 指令
- 4.3 重定向
- 4.4 管道
- 5.环境变量
- 5.1 影响范围
- 5.2环境变量的作用
- 5.3 常见的环境变量
- 6.脚本
1.CLI与GUI
CLI命令行界面(CLl,Command Line Interface)
是早期电脑最广泛的用户界面,用户通过键盘出入指令,指令的执行结果往往也以文本的形式呈现给用户。
GUI 图形用户界面
图形用户界面(GUl,Graphical UserInterface)是指采用图形方式显示的用户界面,图形用户界面的学习成本更低,用户可以使用标及键盘与应用程序、操作系统进行交互。
2.终端和Shell
2.1 Shell 壳层
Shell(也称为壳层)则是指为用户提供用户“界面”的软件,这里的界面一般指 CLI。当然也有 GUl的 Shell比如 windows Explorer,即windows 资源管理器。一般来说计算机科学中提到Shell 的时候都是指 CLI类型的软件。
| Windows | CLI | GUI |
|---|---|---|
| Windows | Windows cmd/powershell | 资源管理器 |
| 类 Unix | bash/zsh | GNOME/KDE |
2.2 终端
常见终端模拟器
Windows :控制台 TerminalWindows
Linux :gnome-terminal/Konsole
macOS:Terminal.app/iTerm2
2.3 终端和Shell区别
现代操作系统中,用户用到的看来是 **CLI形式的“命令行窗口”或“终端”往往包括两个部分:一个终端模拟器软件以及真正处理用户命令的 Shell 。**比如 Windows 下常见的命令提示符运行后包含一个终端模拟器 conhost.exe 以及一个 Shell cmd.exe 。

3.标准流
终端和 Shell 之间通过标准流进行通信,标准流有三个
·stdin即标准输入。
·stdout即标准输出。
.stderr即标准错误输出。
4.PowerShell
4.1 管理员与非管理员
管理员权限打开的和非管理员权限的 Powershell 可以通过窗口标题以及初始工作目录来区分。


4.2 指令
Tab 自动补全命令
方向键可以翻看命令历史记录
CTRL+C 可以中断当前指令或脚本运行
非管理员权限的命令行支持直接拖放目录或文件
按住左键选中内容后点击右键可复制,直接点击右键可黏贴

4.3 重定向
在 Powershell 或其他 Shell 中,可以将指令执行的结果输出到文件中,甚至输出流之间也可以相互输出,我们称之为重定向。
“> ”重定向输出并覆盖
“> >” 重定向输出并追加
2>&1 2代表stderr,1代表stdout,即将stderr重定向到std
4.4 管道
在 Powershell 或其他 Shell 中,还可以将第一个指令的输出作为第二个指令的输入,来实现程序之间的互通,管道的符号是。比如想要删除当前文件夹中,文件名包含的所有文件。可以运行
dir -Name | grep | rm
5.环境变量
5.1 影响范围
不同类型的环境变量影响范围不同,用户变量只对特定用户生效,而系统变量则全局生效。
系统变量,与 Windows操作系统包括网络状况有关,由操作系统定义。管理员权限的用户可以添加添加、修改或删除;系统变量的作用域是全局的对所有用户生效。
用户变量,由操作系统、某些应用程序以及用户建立,相应的用户可以:增加、修改或删除;用户变量只影响对应的用户。
5.2环境变量的作用
环境变量在现代操作系统中几乎无处不在,常见作用有
为各个进程提供系统相关信息,比如Windows下环境变量 TEMP 对应临时文件夹。
PATH环境变量存放一些目录,Shel在执行指令时会试图从这些目录查应程序。
脚本中可以用环境变量来存储一些必要的数据,甚至可以将这些数据传这其他进程。
5.3 常见的环境变量
Windows 下常见的环境变量有,
Path:可执行文件搜索路径
ProgramFiles:默认程序安装目录·
windir:Windows 文件夹的路径
APPDATA:当前用户程序数据存放路径
TEMP/TMP:当前用户临时文件夹
6.脚本
什么是脚本
将多条 cmdles 集中在一个文件中,像编程一样自动化完成任务,这个文件我们称之为“脚本”。
cmd.exe的脚本扩展名为.bat,称之为批处理文件
Powershell的脚本扩展名为.ps1
脚本执行策略
Windows 上出于安全考虑,默认脚本执行策略为Restricted,即阻止所有脚本运行。Powershell执行策略包括以下几种:
AllSigned 可以运行脚本,但要求数字签名,包括本地编写的脚本
Bypass 不阻止任何脚本运行
RemoteSigned 可以运行脚本,远程下载的脚本需要数字签名,而本地写的不用
Restricted 不允许运行脚本
Undefned 未定义
Unrestricted 不限制脚本运行但会对非本地脚本弹出警告
相关文章:
【完-网络安全】Shell与脚本
文章目录 1.CLI与GUI2.终端和Shell2.1 Shell 壳层2.2 终端2.3 终端和Shell区别3.标准流 4.PowerShell4.1 管理员与非管理员4.2 指令4.3 重定向4.4 管道 5.环境变量5.1 影响范围5.2环境变量的作用5.3 常见的环境变量 6.脚本 1.CLI与GUI CLI命令行界面(CLl,Command Line Interfa…...
磁盘标签和分区标签
在Windows中,我们为分区命名,那个名字就是「分区标签」。所以说“分区标签”是给分区的一个名字。 「磁盘标签」其实是我们经常说的「分区表」,比如MBR、GPT等等。而「分区标签」,虽然叫做“分区”标签,但它则是文件系…...
关于摩托车一键启动无钥匙进入、智能科技创新
摩托车一键启动无钥匙进入功能 一、工作原理 摩托车的一键启动无钥匙进入功能采用了世界最先进的RFID无线射频技术和最先进的车辆身份编码识别系统,率先应用小型化、小功率射频天线的开发方案,并成功融合了遥控系统和无钥匙系统,沿用了传统…...
怎么找矩阵系统,怎么源码搭建,源头技术开发需要哪些支持
一、引言 在进行矩阵系统源码搭建时,选择合适的工具至关重要。正确的工具选择不仅可以提高开发效率,还能确保系统的稳定性、可扩展性和性能。本文将探讨在矩阵系统源码搭建过程中如何选择合适的工具。 二、前端开发工具选择 前端框架 React:由…...
云原生化 - 工具镜像(简约版)
在微服务和云原生环境中,容器化的目标之一是尽可能保持镜像小型化以提高启动速度和减少安全风险。然而,在实际操作中,有时候需要临时引入一些工具来进行调试、监控或问题排查。Kubernetes提供了临时容器(ephemeral containers&…...
uni-app如何搭建项目(一步一步教程)
来来来,看这里 uni-app新建项目教程uni-app项目结构 首先我们要有一个HBuilder这个软件,然后我们来搭建uni-app项目 uni-app新建项目教程 首先我们打开这个HBuilder软件,好我们就出现这个界面,我们点击新建项目 然后我们选择…...
javascript中原型链(__proto__)与原型(prototype)
JavaScript中原型链(proto)与原型(prototype) 在JavaScript中,理解原型链(__proto__)和原型(prototype)对于深入掌握面向对象编程至关重要。本文将通过示例代码,详细解析__proto__和prototype之间的关系&a…...
基于多种机器学习的酒店客户流失预测模型的研究与实现
文章目录 有需要本项目的代码或文档以及全部资源,或者部署调试可以私信博主项目介绍实现过程 有需要本项目的代码或文档以及全部资源,或者部署调试可以私信博主 项目介绍 项目背景: 在当今竞争激烈的酒店行业中,预测和防止客户流…...
Unity实现自定义图集(三)
以下内容是根据Unity 2020.1.0f1版本进行编写的 1、实现编辑器模式下进游戏前Pack全部自定义图集 同Unity的图集一样,Unity的编辑器模式会在进游戏前把全部的SpriteAtlas都打一次图集,如图: 我们也实现这样的效果。 首先需要获取全部的图集路径。因为目前使用的是以.…...
【测开面试真题】
针对地图导航设计测试用例 文章目录 1. selenium 定位元素的方式有几种?2. 自动化测试能够取代人工测试吗?3. 什么是回归测试? 1. selenium 定位元素的方式有几种? 🐧①通过CSS选择器定位;🐧②…...
RelationGraph实现工单进度图——js技能提升
直接上图: 从上图中可以看到整个工单的进度是从【开始】指向【PCB判责】【完善客诉】【PCBA列表】,同时【完善客诉】又可以同时指向【PCB判责】【PCBA列表】,后续各自指向自己的进度。 直接上代码: 1.安装 1.1 Npm 方式 npm …...
针对脚本爬虫攻击的防御策略与实现
随着互联网的发展,网站和应用程序面临着越来越多的自动化攻击,其中包括使用脚本进行的大规模数据抓取,即所谓的“爬虫攻击”。这类攻击不仅影响网站性能,还可能导致敏感数据泄露。本文将探讨如何识别爬虫攻击,并提供一…...
JVM发展历程
JVM发展历程 Sun Classic VM 早在1996年Java1.0版本的时候,Sun公司发布了一款名为sun classic VM的Java虚拟机,它同时也是世界上第一款商用Java虚拟机,JDK1.4时完全被淘汰。这款虚拟机内部只提供解释器。现在还有及时编译器,因此…...
C语言 | Leetcode C语言题解之第470题用Rand7()实现Rand10()
题目: 题解: // The rand7() API is already defined for you. // int rand7(); // return a random integer in the range 1 to 7int rand10() {while(true) {int index (rand7() - 1) * 7 rand7(); if(index < 40) return index % 10 1; } }...
【JavaScript】拷贝对象的几种方式与对比
#工作中拷贝对象是常有的事,我们需要分清楚深浅拷贝,一般来说要做的都是深拷贝,不然会有关联影响# 解构赋值 es6新语法,简洁是简洁,但是需要注意深拷贝只针对第一层 使用方式:{...obj} let stu {name:…...
高防服务器为何有时难以防御CC攻击及其对策
高防服务器通常被用来抵御各种类型的DDoS攻击,包括CC(Challenge Collapsar)攻击。然而,在某些情况下,即使是配备了高级防护措施的高防服务器也可能难以完全防御CC攻击。本文将探讨导致这一现象的原因,并提供…...
性能测试工具locust —— Python脚本参数化!
1.1.登录用户参数化 在测试过程中,经常会涉及到需要用不同的用户登录操作,可以采用队列的方式,对登录的用户进行参数化。如果数据要保证不重复,则取完不再放回;如可以重复,则取出后再返回队列。 def lo…...
Java中的拦截器、过滤器及监听器
过滤器(Filter)监听器(Listener)拦截器(Interceptor)关注点web请求系统级别参数、对象Action(部分web请求)如何实现函数回调事件Java反射机制(动态代理)应用场…...
Nginx 和 Lua 设计黑白名单
使用 Nginx 和 Lua 设计黑白名单机制,借助 Redis 存储 在现代网络应用中,安全性是一个不可忽视的关键因素。应用程序需要能够有效地管理访问权限,以保护其资源不被恶意用户攻击。黑白名单机制是实现访问控制的一种有效方式。本文将详细介绍如…...
【部署篇】Redis-01介绍
一、Redis介绍 1、什么是Redis? Redis,英文全称是Remote Dictionary Server(远程字典服务),Redis是一个开源的、使用ANSI C语言编写的Key-Value存储系统,支持网络、可基于内存亦可持久化。 它提…...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
排序算法总结(C++)
目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...
在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
