背景 写脚本的时候,总有临时想构造一堆数组的时候,正经的一个数组是下面这样的 $a=1,2,3,4,5 $a="aa","bb","cc" 纯数字的数字比较简单,用逗号分隔即可,字符串的对象就要前后带引号,以及逗号分隔,相对而言,构造起来不那么优雅 转换 可以使用下面这种方式,快速转换这种关系 $aa="张三 李四 王二 麻子" ($aa -split "\r?\n").Trim() ...
不会英语如何用PowerShell翻译文章标题
背景 Github Page要求上传文件的时候,给自己的文件一个英文名字,类似这样:kukisama.github.io/_posts/2019-12-13-WhoisZhushuiPigIncloud.markdown 问题是英文认识我,我不认识它。 解决方案 用翻译软件是大势所趋,无论是自用还是要走国际范,让代码走出国门,Microsoft 文本翻译 API都是您的明智之选 本期依...
开启MFA多因素后,AzureCli如何自动化登录
需求 由于AzureRM的PowerShell模块逐渐退出历史舞台,所以Azure的自动化登录要做一个比较大的返工,用AZ来做一个代码重构。 难点 公司发给员工的Azure账户使用了MFA(多因素认证),安全的同时,这也导致以前的PowerShell脚本无法使用了 针对开启MFA的账户,又想继续使用自动化的朋友来说,service principal解决起来相对比较简单。 从官网这...
戴尔服务器的IPMI与裸金属部署
需求 最近手里有一批戴尔的R740XD服务器需要批量装系统。以前针对华为浪潮中兴联想的机器,都可以通过开源的IPMI工具ipmitool来进行批量配置。实际上 也只是借用了两个功能 配置系统使用UEFI启动模式 配置系统的一次性引导(仅下一次重启时选择的启动项目,例如光驱、U盘、PXE或者本地磁盘、BIOS界面等)为PXE启动,默认从硬盘启动。 问题在于戴尔的做法有少许不同...
SDNExpress部署流程与经验总结
概述 SDNExpress是微软开源发布的,用以快速部署SDN基础架构的PowerShell脚本,包括NC/MUX/GW。不依赖System Center产品。 部署环境需要有足够的背景知识,请提前阅读《 使用 SDN Express 部署 SDN 基础设施》,以了解技术点。 准备 耗时 准备充分,硬件能够保障的情况下,50分左右完成了部署(32G内存,200G可用空间,I7 6820H...
如何廉价的组装192G内存的测试平台
前言 每一个打工仔都有一个梦想,就是要有一台更快的电脑。这和男人永远想要更贵的表,女人想要更贵的化妆品一样,永无止尽 背景介绍 整套环境其实是慢慢悠悠凑起来的,期间也更换过几次。不感兴趣的可以直接到文末看推荐配置和价格汇总。 期间经过了多次倒腾,基本上算是告一段落 流水 第一次购买 2016年10月,第一次买主要是想测试Azure, Stack,考虑的主要是性价比,怎么便宜怎么来...
PowerShell批量查询域内主机磁盘剩余空间
简单实现 几个需要关注的地方: 1、找出所有需要检查的主机名称,从Active Directory域中直接获取会很方便 2、确认能够访问的主机(ping),不能访问的不去检测磁盘。 3、针对能够访问的主机,检测本地磁盘可用空间和可用空间占比 #找出xxxou下的所有主机 $AllComputers = Get-ADComputer -Filter * -SearchSc...
PowerShell修改Hyper-V虚拟机的UUID
需求 修改Hyper-V下,虚拟机的UUID,模拟更换主板导致的主机UUID的变更。 实现 有个叫做Eric Siron的大哥,很早已经做过这个事情的实现,所以完成这件事情是有现成脚本的。 在2016年4月的时候,他发了一篇 PowerShell Script: Change the BIOS GUID of a Hyper-V Virtual Machine,这篇文章有现成脚本。 ...
PowerShell从ASCII到字符的相互转换
目标 目标是生成一个数组,生成中华常用5000字,或者字母a到z,日语50音之类的。 用途很多,比如大家来找茬,选出你曾经看到的字符,做验证码等等。 其实a到z还好说,但是常用字或者生僻字这种字典就很麻烦了。基于这些字符在计算机中都是有序排列的,只要想办法顺序输出就可以了。 原理 .net有方法可以对ASCII码和真实字符之间做转换,网上找了个例子,翻译成PowerShell ## 从...
谁是注水猪,MiB与MB的区别
多的一个i 现在很多云厂商的参考文献中,开始越来越多的对存储和流量的计算单位使用XiB,例如KiB,GiB。例如下面这种描述,这种描述有没有猫腻呢? Azure 订阅和服务限制、配额和约束条件 一个小小的i,之所以产生这种差异,主要是历史原因,硬盘厂商计算存储使用1000进位,而计算机中则是1024(2的10次方)进位,在KB/GB/TB和KiB/GiB/TiB的转换中,每...