【完-网络安全】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存储系统,支持网络、可基于内存亦可持久化。 它提…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
pikachu靶场通关笔记19 SQL注入02-字符型注入(GET)
目录 一、SQL注入 二、字符型SQL注入 三、字符型注入与数字型注入 四、源码分析 五、渗透实战 1、渗透准备 2、SQL注入探测 (1)输入单引号 (2)万能注入语句 3、获取回显列orderby 4、获取数据库名database 5、获取表名…...
破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
城市路内停车管理常因行道树遮挡、高位设备盲区等问题,导致车牌识别率低、逃费率高,传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法,正成为破局关键。该设备安装于车位侧方0.5-0.7米高度,直接规避树枝遮…...
协议转换利器,profinet转ethercat网关的两大派系,各有千秋
随着工业以太网的发展,其高效、便捷、协议开放、易于冗余等诸多优点,被越来越多的工业现场所采用。西门子SIMATIC S7-1200/1500系列PLC集成有Profinet接口,具有实时性、开放性,使用TCP/IP和IT标准,符合基于工业以太网的…...
pycharm 设置环境出错
pycharm 设置环境出错 pycharm 新建项目,设置虚拟环境,出错 pycharm 出错 Cannot open Local Failed to start [powershell.exe, -NoExit, -ExecutionPolicy, Bypass, -File, C:\Program Files\JetBrains\PyCharm 2024.1.3\plugins\terminal\shell-int…...
