perl脚本获取Windows系统常用路径信息

CodeWarrior自动化构建:VBScript与Perl脚本实战指南 在嵌入式开发中,脚本自动化是提升构建效率、保障流程稳定的关键技术。其核心原理在于通过脚本语言调用开发环境提供的接口,实现对编译、链接等操作的编程控制。这项技术的价值在于将重复性手动操作转化为可重复、可追溯的自动化流程,显著减少人为错误。在嵌入式MCU开发、遗留项目维护等场景中,自动化构建尤为重要。本文聚焦于飞思卡尔(NXP)CodeWarrior IDE,深入解析如何利用其COM自动化对象模型,通过VBScript实现工程清理与构建控制,并结合Perl脚本进行构建前预处理,例如自动生成版本文件,从而构建一套 阅读详情

windows系统常用的路径,比如临时目录、资源文件夹、字体保存目录、应用程序数据存放目录等等。在日常操作的时候寻找略有不便。这里用perl写一个脚本,并把这些目录信息格式化为json,方便查找。如下是perl代码:

#! /usr/bin/perl
use v5.14;
use JSON;
use Win32;
use File::Spec;

my $json = {};

$json->{localAppData} = Win32::GetFolderPath(Win32::CSIDL_LOCAL_APPDATA);
$json->{desktop} = Win32::GetFolderPath(Win32::CSIDL_DESKTOP);
$json->{resources} = Win32::GetFolderPath(Win32::CSIDL_RESOURCES);
$json->{cookies} = Win32::GetFolderPath(Win32::CSIDL_COOKIES);
$json->{fonts} = Win32::GetFolderPath(Win32::CSIDL_FONTS);
$json->{history} = Win32::GetFolderPath(Win32::CSIDL_HISTORY);
$json->{recent} = Win32::GetFolderPath(Win32::CSIDL_RECENT);
$json->{startMenu} = Win32::GetFolderPath(Win32::CSIDL_STARTMENU);
$json->{startUp} = Win32::GetFolderPath(Win32::CSIDL_STARTUP);
$json->{system} = Win32::GetFolderPath(Win32::CSIDL_SYSTEM);
$json->{programs} = Win32::GetFolderPath(Win32::CSIDL_PROGRAMS);
$json->{tempDirectory} = File::Spec->catdir(Win32::GetFolderPath(Win32::CSIDL_LOCAL_APPDATA), 'Temp');

$json->{systemInfo}{displayName} = Win32::GetOSDisplayName();
$json->{systemInfo}{archName} = Win32::GetArchName();

for my $key (keys %$json) {
	next if ref($json->{$key}) eq 'HASH';
	$json->{$key} =~ s{\\}{/}g;
}


say to_json($json, { pretty => 1 });

git-bash自带perl环境,推荐下载最新的git-bash,perl版本更高一点。以本人的电脑为例,在git-bash中执行这个脚本后信息如下:

在这里插入图片描述

Win11下安装Perl语言并实现运行 你好!也许这是你初次安装Perl,在此之前,我也对其他博客里面的教程感到疑惑,安装倒是很简单,但是我该怎么运行呢?于是我结合自身经历,决定让大家少走弯路,一次把最基础的完全搞定,内容不多,大家可以慢慢阅读。 阅读详情

相关推荐

【完美解决】Anaconda3安装后缺失大量文件,没有scripts、Library等目录

Anaconda3是官网下载的:https://www.anaconda.com/distribution/#download-section 我选择的是64位python 3.7的版本。 问题出现及现象: 我自己选择了一个D盘的目录D:\Tools\Anaconda3进行安装,装完后发现conda list命令无法执行,首先都到的是配置环境变量,然后发现安装目录下缺失大量文件(如下图)...

android之行 3万+

获取文件夹下在一段时间内修改过的文件,以目录形式输出,输出为JSON格式

获取在一段时间内修改过的文件,以目录形式输出,输出为JSON格式

qq_39661371的博客 401

Nestjs框架: 集成 Prisma

NestJS官方文档提供了两种数据库相关的内容:Techniques下的数据库板块和Recipes下的具体数据库集成方案。本文以Prisma为例,演示了如何集成Prisma到NestJS项目中。首先创建NestJS项目并安装Prisma,配置MySQL数据库连接。通过Prisma CLI初始化项目、定义数据模型并生成迁移文件。接着创建Prisma模块和服务,配置Prisma客户端连接数据库。最后在控制器中注入PrismaService实现数据查询。整个过程包含了Docker启动MySQL、Prisma模型定

Wang的专栏 1293

PERL 模块调用路径问题探讨

1、关于@INC perl中的INC变量中包含了所有的perl module的查找路径。可以使用perl -V 来查看INC的值。1)默认地INC如下: @INC:   C:/Perl/site/lib   C:/Perl/lib   .2)设置环境变量PERL5LIB来增加到INC,例如:  set perl5lib=c:\perllibs  在设置perl5lib后如下,  %ENV:    ...

yangxiaohui_go的博客 8081

LK32T102 单片机 操作GPIO实现流水灯(1)

前言: LK32T10232(32位)单片机是一款专为电机控制器和数字电源开发的高性能 MCU。采Cortex-M0 内核,最高工作频率可达 72Mhz,ADC 采样速率 达 1Msps。同时具备协处理器单元可满足各种乘法、除法、移位以及各种 复杂函数运算。 LK32T102(32位)支持单电源供电,且内嵌高精度高速及低速振荡器,以及具备 多种低功耗工作模式。同时,集成了多路增强型 PWM,多通道模拟比较 器和高速运算放大器,可满足多种电机及功率控制应用,并简化系统成本。...

qq_58676187的博客 3189

基于STM32设计的便携式心电信号监测系统_146

基于STM32 设计的便携式心电信号监测系统,采用 PulseSensor 心率传感器进行数据采集,通过 LCD 显示屏显示心电数字数据和采集状态。同时,该系统还采用 HC05 蓝牙模块将实时心电信号数据传输到手机 APP,用户可以在手机 APP 上实时查看采集的数据并绘制心率曲线。此外,STM32 上的按键可以控制心率采集状态,用户登录手机 APP 还可以查看实时心电信号折线图。

1万+

perl use 命令中指定路径

如果想对使用的lib指定路径,那么可以使用下面的语法。注意:use lib后面只能跟directory, 不能跟file。 use lib 'c:\perl\lib\xml';use parser parse.pm是目录c:\perl\lib\xml下的一个模块。...

weixin_33857679的博客 669

第8章-认知工程:构建Agent的认知飞轮与自进化《万物皆映射》

认知架构(Cognitive Architecture)是一个系统组织和运行其认知过程的整体设计。对人类而言,认知架构是大脑的结构和功能组织方式;对 AI Agent 而言,认知架构是它处理信息、做出决策、学习经验的系统设计。固定映射 vs 进化映射维度固定映射 Agent进化映射 Agent知识静态(训练时确定)动态(持续积累)策略固定(设计时确定)自适应(经验驱动)工具预定义自主发现/创建错误处理硬编码规则从错误中学习能力边界固定持续扩展在认知工程中,技能。

AI天才研究院 104

WIndows Perl-5.36的下载安装记录

同时点击“Win”+“R”,或搜索“运行”,在对话框内输入“cmd”,进行管理员命令行。在命令行内右击复制上一步的命令,点击回车进行perl的下载安装。进入下载工程配置界面,选择安装组件的名称“Perl”和版本“5.36”,页面下拉,可选择默认配置,或者根据需要进行选配(我选择了默认配置)。注意:该步骤后需要进行账户登录,可选择使用GitHub的账户,也可单独注册。下载工程名配置,并点击“Finish & Install Perl”,如下图。perl官网:https://www.perl.org/

weixin_43493507的博客 9616

ROS从入门到精通0-4:VSCode 搭建 ROS 工程环境

为了提高开发效率,可以先安装集成开发工具和使用方便的工具,本教程用VSCode搭建ROS工程环境

FRIGIDWINTER的博客 1万+

红队内网攻防渗透:内网渗透之内网对抗:实战项目&VPC1打靶&PHP-RCE&三层代理路由&防火墙上线&密码喷射&域控提权

上面已经抓取到了密码,但是我们通过拓扑分析看,要想上线win10只能通过正向shell,因为win7的防火墙是开的,win10反向主动连接肯定入站规则拦截,而win10自己没有开防火墙,所以win7主动正向连接就可以上线。win7开启了防火墙,入站规则肯定是会拦截我们的请求的,所以我们需要反向上线,让win7主动来连接我们。这里扫描发现是存在ms17010漏洞的,但是想上线192.168.2.142的话,我们没有路由是上线不了的,这里有两种办法:一种msf直接生成后门,另一种cs移植后门到msf。

HACKONE的博客 909

Perl-目录操作1

1. 当前工作目录 程序运行时总有一个相应的工作目录,后续要做的事都是从这个目录开始 借助标准模块之一的Cwd模块,我们可以看到当前的工作目录是哪个 use v5.10; use Cwd; say "The current working directory is ", getcwd(); 打印出来的目录应该就是程序保存的位置 如果使用相对路径打开某个文件,perl会按当前目录定位这个相对路径 比如当前工作目录是/home/fred,运行以下代码来读取文件,perl会定位到/home/fred/relat

Arkardia的博客 1807

微信小程序 - 解决报错 operateAudio:fail audioInstance is not set(wx.getRecorderManager苹果ios真机调试运行,播放音频播放出错解决)

微信小程序,苹果ios系统,真机测试报错,播放音频报错operateAudio:fail audioInstance not exist,errCode: -1,小程序生成音频播放报错errMsg,真机调试报错开发者工具没问题,wx.getRecorderManager,音频实例,InnerAudioContext,各种方法都试了不行,只有ios苹果手机有这个问题,IOS 出现 operateAudio,在iOS无法播放的解决方案,更新到最新版本了还是不行,链接没有特殊字符,微信小程序全局音频设置,手机上播

🏆 前端领域优质创作者 1万+

windows下perl的安装和脚本的运行

下载perl编译器。下载地址:http://pan.baidu.com/s/1i3GLKAp 下载后的文件如下图所示。 perl的安装。 直接双击运行下载的文件,首先会出现perl版本等等信息的介绍,不要理,直接next就会出现是否接受perl安装说明,按图示选择接受,然后继续next。 上面next以后会...

weixin_33788244的博客 1万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

安装perl模块+Window 安装 Perl及脚本执行

官网找模块 解压 进入文件夹,含有“Makefile.PL”文件的目录下依次运行: perl Makefile.pl nmake test nmake install OKOKOK

fgh123的博客 2064

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Strawberry Perl 是什么?​​​​Strawberry Perl​​ 是一款专为 ​​Windows 操作系统​​设计的 ​​Perl 编程语言发行版​​。它旨在解决 Windows

​,尤其适合需要快速搭建环境、编译第三方模块的开发者和运维人员。其开源免费、功能完整的特性,使其成为取代 ActiveState Perl 的首选工具。对于 Perl 生态而言,它极大降低了 Windows 用户的使用门槛。它旨在解决 Windows 用户安装 Perl 及扩展模块时的依赖问题,提供"开箱即用"的完整开发环境,无需额外配置编译工具或外部库。Strawberry Perl 是 ​。

weixin_60830013的博客 4491

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

02. Perl 脚本开发入门

通常情况下, linux 系统已默认安装了perl 环境, windows 系统没有集成perl 环境. 笔者并不建议在windows下开发perl 脚本, 还是推荐在linux 系统下开发perl 脚本. 笔者操作系统为linux mint 19.1, 默认perl 版本为5.26. 1. 检测perl 环境 1.1 查看perl 版本 笔者操作系统为 Linux mint 19.1, 默认安装...

Java 程序源 8244

如何快速掌握 Strawberry Perl:Windows 下 Perl 开发的完整指南

Strawberry Perl 是 Windows 平台上最受欢迎的 Perl 二进制发行版,它集成了编译器和预安装模块,让开发者能够一键安装并立即开始工作,无需复杂配置即可轻松安装 XS 模块。本教程将带你从零基础到熟练使用,解锁 Windows 下 Perl 开发的全部潜力! ## ???? 为什么选择 Strawberry Perl?三大核心优势 作为专为 Windows 优化的 Perl ...

gitblog_01049的博客 1272

perl脚本语言学习

来公司的第二个星期便看了一下perl语言,发现掌握一门脚本语言还是非常有用的。到现在为止已经入职两个月,用perl脚本做了这些活: 1. 修改了公司的一个爬取网页源代码的脚本 2. 改进了一个出特征库的脚本,根据svn status的状态,来优化,将只需要添加的DB的数据进行处理。 3. 编写了一个脚本,用于比对两个文件夹的文件(文件数量大约在+),之后选择需要处理的文件。用per...

ddd0316的博客 1933

Strawberry Perl:Windows环境下Perl开发的高效解决方案

在Windows环境中进行Perl开发时,开发者常常面临模块安装复杂、编译器配置繁琐等问题。Strawberry Perl作为一款专为Windows平台优化的Perl发行版,通过集成GCC编译器和预配置的核心模块,解决了传统Perl安装中的诸多痛点。它不仅提供了开箱即用的开发环境,还完美支持CPAN上的XS模块(需要编译的Perl扩展模块),让开发者能够专注于代码编写而非环境配置。无论是企业级应用

gitblog_00898的博客 405

配置perl脚本为windows后台服务

最近工作中需要将perl脚本配置成windows的后台服务,google了好久,终于搞定,分享如下:1:准备工作  配置windows后台服务,需要下载两个文件:instsrv.exe 和 srvany.exe(这个google一下有很多下载链接的)。  instsrv.exe是微软Windows Server 2003 Resource Kit Tools工具中的一个用于添加和删除系统服务。

2000

linux perl脚本 入门,windows\ Linux 下的perl快速上手

Windows:(1)首先,要搭建一个Perl运行的环境:这里用的是activeperl。在网上下载一个安装就OK了,和常用的windows软件安装一样。这里我的安装路径是: 默认的C:\Perl(2)先检查你的perl是否已经在系统的path环境变量中:开始->运行,输入cmd,然后运行perl -v(注意perl与-v之间有空格不能不加),如果能显示perl的版本,说明你的perl已经在...

weixin_35715440的博客 1500

Windows系统下Vscode中使用Perl语言

课程中使用了Perl,发现csdn上没有很好的安装使用教程,遂成此篇。

YoyoDiandian的博客 2620

终极Strawberry Perl指南:Windows下最完整的Perl开发环境配置

Strawberry Perl是为Windows系统量身打造的Perl开发环境,它完美解决了在Windows平台上使用Perl语言进行开发的诸多痛点。如果你正在寻找一个功能齐全、易于使用的Windows Perl开发环境,Strawberry Perl绝对是最佳选择。它不仅包含了完整的Perl解释器,还集成了编译器和丰富的预安装模块,让你能够直接从CPAN安装各种XS模块,无需额外配置。 ##

gitblog_01051的博客 466

如何在Windows Server 2008的IIS 7上安装Perl

Perl is a very popular scripting language which is used to develop a wide variety of tools. One of it’s well know uses is web based CGI (Common Gateway Interface) applications which allow Perl scripts...

310
上一篇: perl脚本批量处理代码中的中文注释乱码的问题
下一篇: 用perl解决小朋友问的2的10000次方是多少的问题
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值