首页 > 系统相关 >powershell path

powershell path

时间:2023-04-03 13:34:07浏览次数:52  
标签:regexPaths string Scope path arrPath powershell RemovePath

https://github.com/ThePoShWolf/Utilities/blob/master/Misc/Set-PathVariable.ps1

<#
.SYNOPSIS
	Modify the PATH environment variable.
.DESCRIPTION
	Set-PathVariable allows you to add or remove paths to your PATH variable at the specified scope with logic that prevents duplicates.
.PARAMETER AddPath
    A path that you wish to add. Can be specified with or without a trailing slash.
.PARAMETER RemovePath
    A path that you wish to remove. Can be specified with or without a trailing slash.
.PARAMETER Scope
	The scope of the variable to edit. Either Process, User, or Machine.
    If you specify Machine, you must be running as administrator.
.EXAMPLE
	Set-PathVariable -AddPath C:\tmp\bin -RemovePath C:\path\java
    This will add the C:\tmp\bin path and remove the C:\path\java path. The Scope will be set to Process, which is the default.

	Set-PathVariable -AddPath "C:\tmp abc\bin" -Scope Machine
  Set-PathVariable -RemovePath C:\tmp\bin -Scope Machine
  Set-PathVariable -RemovePath "C:\tmp abc\bin" -Scope Machine
.INPUTS

.OUTPUTS

.NOTES
	Author: ThePoShWolf
.LINK

#>
Function Set-PathVariable {
    param (
        [string]$AddPath,
        [string]$RemovePath,
        [ValidateSet('Process', 'User', 'Machine')]
        [string]$Scope = 'Process'
    )
    $regexPaths = @()
    if ($PSBoundParameters.Keys -contains 'AddPath') {
        $regexPaths += [regex]::Escape($AddPath)
    }

    if ($PSBoundParameters.Keys -contains 'RemovePath') {
        $regexPaths += [regex]::Escape($RemovePath)
    }

    $arrPath = [System.Environment]::GetEnvironmentVariable('PATH', $Scope) -split ';'
    foreach ($path in $regexPaths) {
        $arrPath = $arrPath | Where-Object { $_ -notMatch "^$path\\?" }
    }
    $value = ($arrPath + $addPath) -join ';'
    [System.Environment]::SetEnvironmentVariable('PATH', $value, $Scope)
}

标签:regexPaths,string,Scope,path,arrPath,powershell,RemovePath
From: https://www.cnblogs.com/Searchor/p/17282796.html

相关文章

  • path()方法函数定义
    path()方法函数定义path函数在Django中的的定义如下所示:path(route,view,kwargs,name)它可以接收4个参数,其中前两个是必填参数后两个为可选参数。参数解析如下:1.routeroute是一个匹配URL的准则(类似正则表达式)。当Django响应一个请求时,它会从urlpatterns的第......
  • CMD、Powershell、Bash
    总体来说,CMD、Powershell和Bash都是命令行工具,用于执行各种命令和脚本,但它们的功能和用法都有所不同,根据不同的需求选择不同的命令行工具。CMDCMD(CommandPrompt)是Windows操作系统中的命令行工具,提供了基本的命令行交互功能,如文件管理、进程管理、网络管理等。CMD是Windows系统......
  • xpath语法的使用(以selenium为例)
    """xpath定位1.路径选择/表示根节点/html表示选择根节点下的html节点/html/body/div表示选择根节点下的html节点下面的body节点下面的div节点//div/p选择所有div下的直接子节点p元素//div//p选择所有div下的所有p元素//div/2.属性选择[@属性名="属性值"......
  • selenium使用css selector和xpath的比较
    selenium提供的定位方式(常用)推荐的定位方式的优先级   优先级最高:ID   优先级其次:name   优先级再次:CSSselector   优先级再次:Xpath针对cssselector和xpath的优先级做一个简单的说明在项目中我们可能用的最多的是css或者xpath,那么针对这两种,我们优先选择css,原......
  • Facebook和Twitter靠边站 Email和SMS才是Path的竞争对手
    私密社交网路Path创始人DaveMorin,作为嘉宾出席了旧金山TechCrunchDisrupt大会,并向我们亲自讲述Path的创立背后的故事,以及对未来移动化的个人看法。在Path创立之前,已经有......
  • ubuntu查看和修改PATH环境变量
    总结:path变量其实存储在/etc/environment文件中,如果要重置PATH只需要source/etc/environment1、查看PATHecho$PATH2、修改PATH修改ubuntu中PATH的方法:直接修改$PAT......
  • Linux 中PATH、CLASSPATH等环境变量配置详解
    #setjavaenvironmentexportJAVA_HOME=/usr/lib/jvm/jdk1.7.0_79exportCLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jarexportPATH=$JAVA_HOME/b......
  • Xcode的Search Paths配置
    在Xcode中的文件搜索路径配置有两个地方,一个是Project层的配置,一个是Target的配置。Project-BuildSettings-SearchPathsTarget-BuildSettings-SearchPaths在Target......
  • WPF 使用Path绘制几何图形
    原创:https://blog.csdn.net/chulijun3107/article/details/105461106/ Path类继承自Shape,可以绘制很多简单的,复合的图形。Path类通过提供的Data属性,Data属性接受一个G......
  • jsonpath解析淘票票城市
    步骤:首先找到城市的接口通过F12打开检查点击北京即可得到爬取数据的接口打开url发现显示的是jsonp121({"returnCode":"0","returnValue":{}});原因:​ 淘票票的请求头......