Windows基础

devtools/2025/2/2 20:14:10/

一. Windows防火墙与Defender

介绍:Windows防火墙与Defender是Windows操作系统中两大重要的安全组件,它们共同工作以保护计算机免受各种网络威胁和病毒攻击。

  • Windows防火墙:Windows防火墙是一种软件防火墙,旨在监控和控制进出计算机的数据流量。它可以阻止不受信任的程序或服务通过网络与外界通信,从而降低被恶意攻击的风险。防火墙可以基于程序、端口、协议等多个维度进行配置,用户可以根据需要调整规则,允许或阻止特定的流量。
  • Windows Defender:Windows Defender(现更名为Microsoft Defender)是微软为Windows操作系统提供的内置防病毒软件。它提供实时保护,监控文件、应用程序和其他活动中的潜在威胁。Microsoft Defender除了病毒防护外,还提供间谍软件防护、垃圾邮件过滤、云端保护等功能,确保系统的整体安全。

二. 用户与组

介绍:在Windows操作系统中,“用户”和“组”是用于管理访问权限和控制计算机安全的核心要素。通过正确地配置和管理用户账户和用户组,可以有效地控制系统资源的访问权限。

  • 查找:此电脑 --> 右键点击管理 --> 系统工具 --> 本地用户和组

    • 用户:每个用户账户代表一个计算机使用者,通过用户名和密码进行身份验证。Windows允许管理员为不同的用户配置不同的访问权限,这样每个用户只能访问自己授权的资源。用户可以是本地用户,也可以是域用户(在公司或大型网络环境中)。
    • :组是将多个用户结合在一起的方式,以便统一配置权限。通过将多个用户添加到同一个组,可以快速管理这些用户对计算机资源的访问权限。例如,管理员组有较高的权限,而标准用户组则限制了用户的系统操作权限。

CMD命令的使用:

  1. 添加用户:可以通过net user​命令来添加用户。假设我们要添加一个名为testuser​的用户,并设置密码为password123​,命令如下:

    net user testuser password123 /add
    
  2. 删除用户:删除用户账户使用net user​命令,并加上/delete​选项。要删除用户testuser​,命令如下:

    net user testuser /delete
    
  3. 添加用户到组:可以使用net localgroup​命令将用户添加到特定的用户组。例如,将testuser​添加到Administrators​组中:

    net localgroup Administrators testuser /add
    
  4. 删除用户从组中移除:同样,使用net localgroup​命令将用户从某个组中删除。例如,将testuser​从Administrators​组中删除:

    net localgroup Administrators testuser /delete
    

三. 计划任务

介绍:计划任务(Task Scheduler)是Windows操作系统中的一项非常实用的功能,可以帮助用户自动化日常任务,如备份文件、清理临时文件、执行系统扫描等。通过计划任务,可以减少重复工作,提高工作效率。

  • 查找:此电脑 --> 右键点击管理 --> 系统工具 --> 任务计划程序

    • 创建计划任务:用户可以通过任务计划程序来设置定时任务。在指定的时间或条件下,Windows会自动执行特定的程序或脚本。计划任务可以配置为在后台运行,不会干扰用户的正常操作。

    • 常见操作

      • 设置定时任务:例如,每天早晨7点自动运行备份脚本,可以在任务计划程序中配置触发条件为“每天”,并设置具体的执行时间。
      • 任务执行时的操作:例如,设置任务在计算机启动时运行特定程序,或者在系统空闲时执行清理操作。

计划任务的常用操作

  1. 创建一个新的计划任务:打开CMD或PowerShell,使用SchTasks​命令来创建名为DailyBackup​的计划任务。例如,设置每天凌晨2点运行一个名为backup.bat​的脚本:

    schtasks /create /tn "DailyBackup" /tr "C:\Scripts\backup.bat" /sc daily /st 02:00
    
  2. 查看当前计划任务:要查看当前系统中已设置的计划任务,可以使用以下命令:

    schtasks /query
    
  3. 删除计划任务:要删除名为DailyBackup​的计划任务,可以使用:

    schtasks /delete /tn "DailyBackup" /f
    
  4. 修改计划任务:可以使用/change​选项来修改已存在的任务。例如,修改某个任务的运行时间:

    schtasks /change /tn "DailyBackup" /st 03:00
    
  5. 运行计划任务:手动触发某个计划任务的执行,可以使用:

    schtasks /run /tn "DailyBackup"
    
  6. 设置任务的权限:在创建任务时,可以指定任务以管理员权限执行。例如,要以管理员权限运行backup.bat​脚本:

    schtasks /create /tn "BackupWithAdmin" /tr "C:\Scripts\backup.bat" /sc daily /st 02:00 /ru "SYSTEM"
    

四.PowerShell

介绍:PowerShell 是一个强大的命令行界面(CLI)和脚本语言,广泛用于系统管理和自动化任务。它不仅能够执行传统的命令,还支持强大的脚本功能和流程控制,能够帮助管理员批量管理多个系统、处理复杂的任务等。

1. PowerShell 基础语法

1.1 变量的定义
  • 介绍:在 PowerShell 中,变量以 $​ 符号开头,后面跟上变量名。与许多编程语言不同,PowerShell 是 动态类型,不需要事先声明数据类型。PowerShell 会根据赋值的内容自动推断变量类型。

  • 示例

    # 定义一个字符串变量
    $name = "John"# 定义一个数字变量
    $age = 30# 定义一个布尔变量
    $isActive = $true
    
1.2 数据类型
  • 字符串:"Hello World"​ 或 'Hello World'​
  • 整数:18​
  • 浮点数:3.14​
  • 布尔值:$true​ 或 $false​
  • 数组:@("apple", "banana", "cherry")​
1.3 输出
  • 介绍:可以使用 echo​ 命令输出结果,也可以直接输入变量或值来显示。

  • 示例

    # 输出字符串
    echo "Hello, World!"# 直接输出变量
    $name = "Alice"
    $name  # 输出变量内容
    

2. 控制语句

2.1 If-else 语句
  • 介绍:for​ 循环用于按指定次数反复执行代码块。

  • 示例

    $age = 18if ($age -ge 18) {echo "You are an adult."
    } elseif ($age -lt 18) {echo "You are a minor."
    } else {echo "Invalid age."
    }
    
2.2 Switch 语句
  • 介绍:switch​ 语句用于匹配多个条件。它比多个 if-else​ 更简洁。

  • 示例

    $day = "Monday"switch ($day) {"Monday" { echo "Start of the week." }"Friday" { echo "End of the week." }default { echo "It's some other day." }
    }
    
2.3 For 循环
  • 介绍:for​ 循环用于按指定次数反复执行代码块。

  • 示例

    for ($i = 1; $i -le 5; $i++) {echo "Number $i"
    }
    
2.4 Foreach 循环
  • 介绍:foreach​ 用于遍历数组或集合中的每个元素。

  • 示例

    $fruits = @("apple", "banana", "cherry")
    foreach ($fruit in $fruits) {echo $fruit
    }
    
2.5 While 循环
  • 介绍:while​ 循环会在条件为真时持续执行,常用于不确定次数的循环。

  • 示例

    $i = 1
    while ($i -le 5) {echo "Iteration $i"$i++
    }
    

3. 数组

介绍:PowerShell 支持多种数组类型,既可以是简单的线性数组,也可以是哈希表(键值对)。

3.1 定义数组
  • 介绍:在PowerShell中数组通过 @()​ 符号来定义。

  • 示例

    # 定义一个简单的数组
    $fruits = @("apple", "banana", "cherry")# 输出数组中的元素
    $fruits[0]   # 输出 "apple"
    $fruits[1]   # 输出 "banana"
    
3.2 访问和修改数组元素
  • 介绍:可以通过索引访问和修改数组元素。

  • 示例

    # 修改数组元素
    $fruits[1] = "blueberry"  # 将 "banana" 改为 "blueberry"# 输出修改后的数组
    $fruits
    
3.3 数组的遍历
  • 介绍:可以使用 foreach​ 循环遍历数组。

  • 示例

    foreach ($fruit in $fruits) {echo $fruit
    }
    

4. 函数

  • 介绍:在 PowerShell 中,函数通过 function​ 关键字定义。函数可以接受参数,并返回一个值。
4.1 定义函数
  • 格式

    function FunctionName {# 函数体:编写你想要执行的代码
    }
    
  • 示例

    # Say-Hello为函数名
    function Say-Hello {  echo "Hello, World!"  # 输出Hello, World!
    }# 调用函数
    Say-Hello
    

4.2 带参数的函数
  • 介绍:函数可以接收参数,在定义时通过括号 ()​ 指定参数名。

  • 格式

    function FunctionName {param ([类型]$param1,[类型]$param2)# 函数体# 可以在这里使用 $param1 和 $param2
    }
  • 示例

    function Greet-User {param ([string]$name)echo "Hello, $name!"
    }# 调用函数并传递参数
    Greet-User -name "Alice" # 输出Hello,Alice!
    
4.3 函数返回值
  • 介绍:PowerShell 函数可以返回值。默认情况下,函数的输出会作为返回值。如果想显式返回某个值,可以使用 return​。

  • 示例

    function add-num {param ([int]$a,[int]$b)return $a + $b
    }# 调用函数并获取返回值
    $result = add-num -a 5 -b 10
    Write-Output $result  # 输出 15

5. PowerShell 常用命令

  • Get-Help:获取命令的帮助文档。

    Get-Help Get-Process
    
  • Get-Process:列出当前运行的进程。

    Get-Process
    
  • Set-ExecutionPolicy:设置脚本的执行策略,允许或禁止执行 PowerShell 脚本。

    Set-ExecutionPolicy RemoteSigned
    
  • Get-Service:查看当前系统中的服务。

    Get-Service
    
  • Start-Service / Stop-Service:启动或停止服务。

    Start-Service -Name "wuauserv"  # 启动 Windows 更新服务
    Stop-Service -Name "wuauserv"   # 停止 Windows 更新服务
    

http://www.ppmy.cn/devtools/155525.html

相关文章

页表(Page Table)

页表(Page Table) 概述: 实现虚拟内存的重要数据结构,作用是将虚拟地址映射到物理地址,从而允许操作系统和硬件进行有效的内存管理。虚拟内存技术允许程序使用比物理内存更大的地址空间 基本结构: 虚拟内存被划分为固定大小的页…

跨组织环境下 MQTT 桥接架构的评估

论文标题 中文标题: 跨组织环境下 MQTT 桥接架构的评估 英文标题: Evaluation of MQTT Bridge Architectures in a Cross-Organizational Context 作者信息 Keila Lima, Tosin Daniel Oyetoyan, Rogardt Heldal, Wilhelm Hasselbring Western Norway …

2024第十五届蓝桥杯网安赛道省赛题目--rc4

rc4 一、查壳 无壳,32位 二、IDA分析 1.main 2.sub_401005 根据题目以及该函数的内容都可以让我们确定这是个rc4加密题。 所以

C++实现状态模式

首先上代码&#xff1a; #include <iostream> #include <memory>class Context;class State { public:virtual void Handle(Context * context) 0; //纯虚函数virtual ~State() default; //虚析构函数 };//创建状态A class ConcreateStateA : public State{…

第四章-SUSE- Rancher-容器高可用与容灾测试-RKE2(容灾测试)

系列文章目录 第一章-SUSE- Rancher-容器高可用与容灾测试-RKE2-外置Mysql&#xff08;主备集群搭建&#xff09;-CSDN博客 第二章-SUSE- Rancher-容器高可用与容灾测试-RKE2-集群搭建&#xff08;外置Mysql&#xff09; 第三章-SUSE- Rancher-容器高可用与容灾测试-Rancher-…

独立游戏RPG回顾:高成本

刚看了某纪录片&#xff0c; 内容是rpg项目的回顾。也是这个以钱为核心话题的系列的最后一集。 对这期特别有代入感&#xff0c;因为主角是曾经的同事&#xff0c;曾经在某天晚上听过其项目组的争论。 对其这些年的起伏特别的能体会。 主角是制作人&#xff0c;在访谈中透露这…

Android Studio 新版本24.2.2 运行后自动切到 LogCat

最近更新了 Android studio 版本&#xff0c;发现有个问题&#xff1a; 每次 Run app 之后。都会自动切换到 run 标签。这让我非常不习惯。我个人习惯在app 运行后查看Logcat 最后靠 deepSeek 找到一种解决方案&#xff1a; Android Studio 中截图如下&#xff1a;

微机原理与接口技术期末大作业——4位抢答器仿真

在微机原理与接口技术的学习旅程中&#xff0c;期末大作业成为了检验知识掌握程度与实践能力的关键环节。本次我选择设计并仿真一个 4 位抢答器系统&#xff0c;通过这个项目&#xff0c;深入探索 8086CPU 及其接口技术的实际应用。附完整压缩包下载。 一、系统设计思路 &…