专栏首页Aloys的开发之路使用PowerShell简化我的工作

使用PowerShell简化我的工作

在这几年的编程学习和工作中,我积累的许多轻量级的小工具,比如Everything,BeyondCompare,BatchRename、HperSnap等等,这些软件都是绿色软件,无需安装,即使重装系统也可以很容易的迁移。但是由于工具比较多,不可能在桌面上为这些工具全部设置快捷方式,于是只能使用命令行进行调用。程序员们应该都知道,如果想要在cmd或者powershell中调用这些小工具,就要把这些工具的可执行文件的所在目录添加到系统环境变量Path之中。但是这样手工去添加太麻烦了,因为要添加的目录比较多,而且之后如果还想加入新的工具就必须继续设置环境变量,最重要的一点是每次重装系统还要重新设置一遍。作为一个程序员怎么去做这么笨的事情呢?于是我写了一个powershell配置脚本,让powershell每次启动时都去读该脚本,设置环境变量。 首先介绍一下我的工具集的结构:

  • Tools/
    • ToolA.exe
    • ToolB.exe
    • ToolC.exe
    • ...
    • Toola/
      • Toolsa.exe
      • Toola工具的其它文件
    • Toolb/
      • Toolsb.exe
      • Toolb工具的其它文件
    • ...

下面是我的powershell脚本(profile.ps1):

# Put this profile file into %userprofile%\[My] Documents\WindowsPowerShell for only yoursef
# Put this profile file into $windir%\system32\WindowsPowerShell\v1.0 for every in your computer
# Set the $BasePath to the directory which your tools are placed

$BasePath = new-object System.IO.DirectoryInfo "D:\software\tools"

$Env:Path = $Env:Path + ":" + $BasePath

Get-ChildItem $BasePath | ForEach-Object -Process {

if($_ -is [System.IO.DirectoryInfo]) {

    $Env:Path=$Env:Path + ";" + $BasePath.FullName + "\" + $_.Name;

    }
}

另外这个脚本之后可能会添加一些其它功能,大家可以随时到我的github上看看:https://github.com/jiangxincode/data/blob/master/profile.ps1

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Windows平台下安装Eclipse插件,开发Hadoop应用

    安装插件 将hadoop安装包hadoop\contrib\eclipse-plugin\hadoop-0.20.2-eclipse-plugin.jar拷贝到...

    用户1221057
  • 利用Spring中同名Bean相互覆盖的特性,定制平台的类内容。

    今天处理了一个问题,J2EE项目依赖了底层平台的功能,平台JAR包中配置了一个Bean,对应的实现类也在该平台JAR包中,由于Bean的配置不是懒加载的,所以在...

    用户1221057
  • MIPSsim使用说明

    MIPSsim下载:https://files.cnblogs.com/files/jiangxinnju/MIPSsim.zip

    用户1221057
  • 【转】 COM 免注册技术

    今天实际应用时,又进行了一些测试,发现与以前看到资料中一些不同的表现,见最后的【补充】部分

    静谧的小码农
  • Python运行不显示DOS窗口方法

    方法1:pythonw xxx.py 方法2:将.py改成.pyw (这个其实就是使用脚本解析程序pythonw.exe)

    用户2398817
  • 关于面包屑的无障碍讨论

    几天前收到一位盲人朋友的邮件,内容如下“您好 能不能增加一个快速跳到新闻列表第一个的热键呢” 这个需求并不是个例。 我开始纠结于一个事情:在文章的底层页如何确定...

    RP道貌不岸然
  • Policy Engine 的前世今生

    作为一个 video streaming service,TubiTV 很重要的一项功能是保证影视剧按照合约上的要求在规定的时间(窗口期),规定的平台,以及规定...

    tyrchen
  • 设置一个计划任务,到了时间就运行代码

    其实这篇文章的内容很简单,说白了就是设置一个计划任务,当触发到设定的条件后就运行。

    伪君子
  • Laravel源码解析之HTTP Kernel

    由于 PHP 可以处理 WEB 和 CLI 两种接口请求,所以 Laravel中设计 HttpKernel 和 ConsoleKernel 来处理这两种类型的请...

    KevinYan
  • Github 项目推荐 | 基于 Python Schema 的机器学习库 —— Smart Fruit

    Smart Fruit 是一个基于 Python Schema 的机器学习库,包含了 scikit-learn,用于快速创建简易的机器学习模型。

    AI研习社

扫码关注云+社区

领取腾讯云代金券