首页 > 系统相关 >PowerShell系列四:容器操作

PowerShell系列四:容器操作

时间:2023-07-04 13:32:53浏览次数:51  
标签:容器 系列 Get Env FileSystem cmdlet 驱动器 PowerShell PSDrive

容器

容器是一个很通用的概念。比如文件、文件夹、注册表、磁盘分区、数组、hash表、命名空间、用户组、OU、数据库、数据表等等,它们的共同点就是包含了数据。 在PowerShell中一切都是从"PSDrive"开始的,您熟悉了操作PSDrive,基本就涵盖了对资源的操作。

Get-PSDrive
#输出
Name           Used (GB)     Free (GB) Provider      Root                                                ---------     --------- --------      ----                                               
Alias                                  Alias
C                  48.92         12.75 FileSystem    C:\                                             
Cert                                   Certificate   \
D                  16.42        483.56 FileSystem    D:\
Env                                    Environment
F                  11.21        188.77 FileSystem    F:\
Function                               Function
HKCU                                   Registry      HKEY_CURRENT_USER
HKLM                                   Registry      HKEY_LOCAL_MACHINE
Temp               48.92         12.75 FileSystem    C:\Users\happy\AppData\Local\Temp\
Variable                               Variable
WSMan                                  WSMan

我们来解读一下上面的输出

  • Name :可以理解为限定前缀
  • Used,Free 文件系统才有值
  • PowerShell 提供程序是 .NET 程序,提供对专用数据存储的访问,以便更轻松地查看和管理。 数据显示在驱动器中,你可以像在硬盘驱动器上一样访问路径中的数据。 可以使用提供程序支持的任何内置 cmdlet 来管理提供程序驱动器中的数据。 此外,还可以使用专为数据设计的自定义 cmdlet。 提供程序还可以向内置 cmdlet 添加动态参数。 这些参数仅在将 cmdlet 与提供程序数据一起使用时可用。

  • 和挂载网络驱动器,或者快捷方式很像 PsDrive的结构据我的了解分为两种,一种是类似文件系统的树形结构、一种是前缀限定的变量.格式为"$<Name>:value"。访问方式有点不同,我们来尝试一下。

注册表、Cert、Wsman文件系统(树型结构)

New-PSDrive -Name User -PSProvider FileSystem -Root C:\users\<Your>\
New-PSDrive -Name scan -PSProvider FileSystem -Root \\files\scan
Get-PSDrive
#输出
User               48.86         12.80 FileSystem    C:\users\happy\
ls cert:
ls wsman:

变量(前缀限定)

两个变量的驱动器:

  1. Env:系统的环境变量
  2. Variable: PowerShell的自动变量 访问方式和树型不同,文件系统大家都访问的很熟悉了,就不介绍了。 请注意区别 *item* cmdlet后面的驱动器是没有'$'符号的,驱动器和项名之间有个':' 请注意 **取值的语法"$Env:windir" '$'符号后面跟驱动器名加':'**。
#遍历
Get-ChildItem Env:
Get-ChildItem variable:

#单独变量
Get-Item Env:windir
Get-Item variable:profile

#读取值
$Env:windir
$variable:profile

函数和别名(前缀限定)

Alias,Function

#别名
Set-Item -Path alias:np -Value "c:\windows\notepad.exe"
#函数:设置提示符
Set-Item -Path function:prompt -Value {'PS >'}

小技巧

  • 使用环境变量或者自动变量在命令行参数或脚本中的时候最好是加 ""
  • 环境变量和自动变量修改只在当前会话中有用,关闭后就会被丢弃
  • 修改一些东西的时候如果提示失败,可以试试 -Force参数
  • 可以在$profile里设置一些变量,这样每次打开Shell都会自动创建
  • 一个很好的练习方法,每次操作电脑的时候,想一下我用PoserShell可以操作吗?

最后

博客只能起到介绍性的作用,官方文档才是最终归宿。那么我为什么要写博客,您为什么要花时间来看博客? 博客能够提供您一条入门的路径,或者说一个知识点的介绍。帮您在茫茫多的文档中划定一个范围,让您能够有所适从。博客会提供一些示例,让您快速判断对这个知识点是不是感兴趣。如果您决定去阅读文档,那么我想请您一定要多花点时间在about开头的文档上。会让您的技术水平有质的提升 About文档

标签:容器,系列,Get,Env,FileSystem,cmdlet,驱动器,PowerShell,PSDrive
From: https://blog.51cto.com/u_15652454/6619459

相关文章

  • 可视化容器管理工具-portainer.io使用
    续docker日常使用指南背景当我们开始使用docker后,我们的机器上镜像和容器会越来越多,或者有时候我们有多台开发机的时候,单纯使用命令行去管理镜像和容器就变得麻烦了,这时,我们就可以选择一些可视化的容器管理工具来保护我们为数不多的头发了。portainer.io就是这方面的一个不错的......
  • Spring容器获取Bean的9种方式
    1前言随着SpringBoot的普及,Spring的使用也越来越广,在某些场景下,我们无法通过注解或配置的形式直接获取到某个Bean。比如,在某一些工具类、设计模式实现中需要使用到Spring容器管理的Bean,此时就需要直接获取到对应的Bean。本文为大家整理汇总了常见的获取Bean的方式,并提供一些优......
  • Docker|容器与Docker基础知识
    Docker|基础知识从虚拟机开始我们知道和一个单纯的应用程序相比,操作系统是一个很重而且很笨的程序,简称笨重,有多笨重呢?我们知道操作系统运行起来是需要占用很多资源的,刚装好的系统还什么都没有部署,单纯的操作系统其磁盘占用至少几十G起步,内存要几个G起步。假设我有一台机器,16G......
  • 全志 Tina Linux RISC-V E907核心开发指南支持百问网V85x系列开发板100ask-v853-pro v
    编写目的:介绍v85X上E907的启动环境和AMP的环境搭建。使用范围:全志V85X系列芯片环境A7SDK:TinaE907SDK:melis4SDK快捷命令说明这里主要介绍几个下文会用到的命令,并不会介绍全部命令,如果想了解全部命令,可以在lunch方案后使用hmm打印出所有tina提供的快捷命令。ckernel,mke......
  • 公共语言运行库(CLR)开发系列课程(3):COM Interop基础 学习笔记
    公共语言运行库(CLR)开发系列课程(3):COMInterop基础学习笔记  上章地址什么是COMComponentObjectModel组建对象模型 基于接口(Interface)接口=协议IID标识接口V-table虚表方式调用单继承 对象(Object)实现一个或者多个接口举例:IDispatch......
  • 容器生命周期配置
    1、容器启动命令spec:  affinity:{}  containers:  - args:    -whiletrue;doechohello;sleep10;done    command:    -/bin/sh    --c    image:nginx:latest    imagePullPolicy:IfNotPresent ......
  • 用 IaC 的方式管理 EC2 实例 - 每天5分钟玩转 GPT 编程系列(1)
    目录写在前面你听我说HelloDevChat第一轮第二轮第三轮成果检验总结一下写在前面咳咳,开个系列吧,就叫《每天5分钟玩转GPT编程》。在这个系列里我们将分享各种借助GPT解决实际工作问题的经验,包括但不限于让GPT辅助写代码。咳咳,敲黑板:本系列文章欢迎大家投稿,分享出你使用G......
  • K8S | 容器和Pod组件
    对比软件安装和运行;一、场景作为研发人员,通常自己电脑的系统环境都是非常复杂,在个人的习惯上,是按照下图的模块管理电脑的系统环境;对于「基础设施」、「主机操作系统」、「系统软件」来说,通常只做配置修改;对于自行安装的软件环境来说,个人通常这样分类:「应用软件」、「研发软......
  • K8S | 容器和Pod组件
    对比软件安装和运行;一、场景作为研发人员,通常自己电脑的系统环境都是非常复杂,在个人的习惯上,是按照下图的模块管理电脑的系统环境;对于「基础设施」、「主机操作系统」、「系统软件」来说,通常只做配置修改;对于自行安装的软件环境来说,个人通常这样分类:「应用软件」、「研发软......
  • 通过容器化实现前端微服务化架构设计
    微服务架构是一种软件架构模式,用于构建复杂应用程序。它将一个大型的单体应用程序拆分为一组更小、更独立的服务,每个服务都运行在自己的进程中,并通过轻量级的通信机制进行交互。每个服务都专注于解决特定的业务功能或服务,并且可以独立开发、部署和扩展。 微服务架构的一些主......