Windows 基础(一):深入理解Windows,掌握命令行与Shell

内容预览 ≧∀≦ゞ

  • Windows 基础(一)
    • 声明
    • 导语
    • 一、Windows 和 Linux 的区别
    • 二、Windows 的Shell
      • Shell 和 终端 的区别
      • 1. 命令提示符(CMD)
      • 2. Windows PowerShell
      • 3. Windows Terminal
      • 4. Windows Subsystem for Linux (WSL)
    • 三、Windows 常用命令
      • 1. 文件与目录操作
      • 2. 文本处理
      • 3. 系统与网络管理
    • 结语

Windows 基础(一)


声明

笔记内容参考了B站UP主 泷羽sec 的学习视频,如有侵权,将立即删除。
本笔记旨在促进网络安全学习,任何不当使用均与作者无关,请勿逾越法律红线,否则后果自负。
希望这些内容能对各位师傅有所帮助,欢迎您的点赞和评论!


导语

在计算机操作系统的领域,Windows 和 Linux 作为最主流的两大平台,各自拥有独特的特点和功能。本文将重点探讨 Windows 系统的基本构架,并介绍不同类型的命令行工具和 Shell。此外,我们还将介绍一些常用的 Windows 命令,旨在帮助用户掌握 Windows 操作系统的基础知识和实用技巧。


一、Windows 和 Linux 的区别

特点 Windows Linux
用户界面 主要使用图形用户界面(GUI),也提供命令行界面(CLI) 主要通过命令行界面(CLI)操作,也有 GUI 选项
文件系统 NTFS、FAT32、exFAT ext3、ext4、Btrfs、XFS、FAT32 等
开源与闭源 大部分是闭源软件 大部分是开源软件
软件安装 常通过安装程序和微软商店 通过包管理器(如 apt、yum、dnf)
权限管理 用户账户控制(UAC) 基于用户和组的权限管理
开发环境 .NET Framework、Visual Studio GCC、Python、Java、各种开发工具
命令行工具 PowerShell、CMD、Windows Terminal Bash、Zsh、Fish 等
默认 Shell CMD(命令提示符) Bash(大多数发行版)
系统更新 通过 Windows Update 通过包管理器或命令行更新
硬件兼容性 支持更广泛的硬件 一些硬件可能需要额外的驱动支持
安全性 病毒和恶意软件风险较多 由于开源和权限管理,安全性较高
路径格式 使用反斜杠(\),如 C:\Users\User (不区分大小写) 使用斜杠(/),如 /home/user (区分大小写)
系统配置 配置文件通常存储在注册表或特定目录 配置文件通常为文本文件,位于 /etc 目录等

补充知识:

  1. 文件系统
  • Linux 文件系统:遵循“一切皆文件”原则。块设备(如硬盘分区)会挂载到目录结构中的某个位置。
  • Windows 文件系统:通过驱动器盘符(如 C:\D:\)来标识磁盘分区,同时也支持将分区挂载到目录。

二、Windows 的Shell

Windows 提供了多种命令行工具和环境,包括 CMD 和 PowerShell(这两个是 Shell),以及 Windows Terminal 和 WSL(分别是终端程序和兼容环境)。每种工具都有其独特的特点和用途。在正式介绍这些工具之前,我们先来了解一下 Shell 和终端的区别。

Shell 和 终端 的区别

Shell终端 是计算机系统中两种相关但不同的概念:

Shell

  • Shell 是一种命令解释器,提供了用户与操作系统核心(内核)交互的界面。
  • 它接受用户输入的命令,将其传递给操作系统执行,然后返回结果。
  • Shell 可以是文本界面的(如 Bash、CMD、PowerShell)或图形界面的。
  • 不同操作系统提供了不同类型的 Shell,比如 Windows 的 CMD 和 PowerShell,Linux 的 Bash 和 Zsh。

终端

  • 终端是一个运行 Shell 或其他程序的接口或窗口。
  • 现代的终端应用程序通常支持多个 Shell,可以在同一个终端窗口内运行不同的 Shell 实例。
  • 终端负责显示 Shell 的输出,并传递用户的输入到 Shell,但它本身不直接解释命令。
  • 终端可以管理多个会话、支持分屏、并提供个性化设置,如配色方案和快捷键。

简言之,Shell 是处理命令的程序,负责解释和执行命令;终端则是提供一个窗口或界面,让用户可以与 Shell 互动。

1. 命令提示符(CMD)

  • 简介:命令提示符是 Windows 的传统命令行界面,用户可以通过输入命令来执行各种操作。
  • 特点
    • 提供基本的文件和系统管理命令。
    • 支持批处理文件(.bat),可以编写简单脚本。
    • 命令格式相对简单,但功能有限。
  • 常用命令dircdcopydel 等。

2. Windows PowerShell

  • 简介:PowerShell 是一个功能强大的命令行和脚本环境,结合了命令行和编程功能,支持访问 .NET 对象。
  • 特点
    • 提供丰富的命令和功能,支持复杂的自动化任务。
    • 支持管道功能,允许将一个命令的输出作为另一个命令的输入。
    • 支持对象而非文本,提供强大的数据操作能力。
    • 可以通过 cmdlet 执行特定操作。
  • 常用命令Get-CommandGet-HelpSet-ExecutionPolicyGet-Service 等。

3. Windows Terminal

  • 简介:Windows Terminal 是一个现代化的终端应用程序,支持多个选项卡和多个 Shell,如 CMD、PowerShell 和 WSL。
  • 特点
    • 提供丰富的自定义选项,如主题、配色方案和字体设置。
    • 支持同时运行多个 Shell,可以在不同选项卡中操作。
    • 提供 GPU 加速的文本渲染,提高了性能和视觉效果。
    • 支持 Unicode 和 UTF-8,适应多种语言和字符集。

4. Windows Subsystem for Linux (WSL)

  • 简介:WSL 允许用户在 Windows 上运行 Linux 发行版,提供一个与 Linux 命令行相似的环境。
  • 特点
    • 支持 Linux 命令和工具,用户可以运行大多数 Linux 应用程序。
    • 可以与 Windows 文件系统交互,轻松访问 Windows 文件。
    • 提供原生的 Linux 体验,适合开发者和系统管理员。
    • 支持安装多个 Linux 发行版(如 Ubuntu、Debian、Fedora 等)。

三、Windows 常用命令

鉴于 PowerShell 的命令相对复杂且在红队场景中应用较少,本节将主要介绍 CMD 的常用命令。不过需要注意,大多数 CMD 命令在 PowerShell 中同样适用,这是因为 PowerShell 通过别名机制实现了对这些命令的兼容。

这个小伙伴总结的笔记也非常不错,十分推荐:https://www.yuque.com/yuqueyonghubkyqvo/hxh303/ugf2qv2g0tzq82bu

1. 文件与目录操作

这些命令用于管理文件和目录,包括创建、删除、重命名、复制等常用操作。

命令 描述
dir 显示目录内容
cd/chdir 切换当前目录
md/mkdir 创建新目录
rd/rmdir 删除空目录,使用 /S 参数可删除非空目录
ren/rename 重命名文件或目录
move 移动文件或重命名目录
copy 复制文件
xcopy 复制目录及其所有子目录
del/erase 删除文件
attrib 显示或修改文件属性
tree 以树状结构显示目录和子目录

2. 文本处理

这些命令用于查看、查找和比较文本内容,适用于文本文件管理和脚本任务。

命令 描述
type 显示文本文件内容
more 分屏显示文本内容
find 在文件中查找指定字符串
findstr 高级文本搜索功能,支持正则表达式
fc 比较文件内容差异
echo 显示消息或将文本写入文件
sort 对文本内容进行排序

3. 系统与网络管理

Windows 提供了多种系统和网络管理命令,用于查询网络配置、监控系统任务、设置环境变量等操作。

命令 描述
ipconfig 显示网络接口的配置
ping 测试到指定目标的网络连通性
tracert 跟踪数据包到目标地址的路由
netstat 显示网络连接、路由表和端口状态
tasklist 列出当前运行的进程
taskkill 终止指定的进程
set 显示或设置环境变量
for 循环执行批量操作(适用于批处理脚本)
systeminfo 显示操作系统的详细信息
msinfo32 启动系统信息窗口,显示详细系统信息
shutdown 关机、重启或注销计算机
hostname 显示本机的主机名

结语

在本文中,我们深入介绍了Windows 系统与LInux系统的不同之处以及终端命令行工具的使用,这些都是红队工作中不可或缺的知识点(特别是不同系统下文件路径等细微差异)。需要强调的是,命令需要多敲多练,方可熟能生巧。

最后,再次感谢您阅读本篇文章,如果您对文中内容有任何疑问或建议,欢迎在评论区与我交流!您的点赞和分享将是我继续创作的动力。

你可能感兴趣的:(星河飞雪,windows,基础知识,终端,shell,命令行)