1、问题背景在Python中,我们可以使用装饰器来修改函数或方法的行为,但当装饰器需要使用一个在实例化时创建的对象时,事情就会变得复杂。...例如,我们想要创建一个装饰器,可以创建一个新的函数/方法来使用对象obj。如果被装饰的对象是一个函数,那么obj必须在函数创建时被实例化。...如果被装饰的对象是一个方法,那么必须为类的每个实例实例化一个新的obj,并将其绑定到该实例。2、解决方案我们可以使用以下方法来解决这个问题:使用inspect模块来获取被装饰对象的签名。...如果被装饰的对象是一个方法,则将obj绑定到self。如果被装饰的对象是一个函数,则实例化obj。返回一个新函数/方法,该函数/方法使用obj。...然后,dec装饰器会返回一个新函数/方法,该函数/方法使用obj。请注意,这种解决方案只适用于对象obj在实例化时创建的情况。如果obj需要在其他时间创建,那么您需要修改此解决方案以适应您的具体情况。
二、需求澄清 粉丝的问题来源于实际的需求,她现在想要使用Python批量筛选上千个Excel文件中的某一行数据并另存为新Excel文件,如果是正常操作的话,肯定是挨个点击进去Excel文件,然后CTRL...+F找到满足筛选条件的数据,之后复制对应的那一行,然后放到新建的Excel文件中去。...这样做肯定是可以,但是当有上百个文件夹需要复制呢?上千个文件呢?肯定就需要消耗大量的时间和精力了。估计一天都不一定完成的了。 这里使用Python进行批量实现,流程下来,1分钟不到搞定!...这里装X了,其实码代码还是需要点时间的,狗头保命! 下面这个代码是初始代码,可以实现的是筛选出来的每一行都另存为新文件,100个文件就存100个文件了。.../res/' + name_list[0][i]) 三、实现过程 这里给大家提供两个可行的代码,思路也很简单,直接遍历文件夹,然后加条件筛选,之后符合条件的,直接使用concat进行合并,代码如下:
昨天给大家分享了使用Python批量筛选上千个Excel文件中的某一行数据并另存为新Excel文件(上篇),今天继续给大家分享下篇。 二、需求澄清 需求澄清这里不再赘述了,感兴趣的小伙伴请看上篇。...三、实现过程 这里的思路和上篇稍微有点不同。鉴于文件夹下的Excel格式都是一致的,这里实现的思路是先将所有的Excel进行合并,之后再来筛选,也是可以的。...手把手教你4种方法用Python批量实现多Excel多Sheet合并、盘点4种使用Python批量合并同一文件夹内所有子文件夹下的Excel文件内所有Sheet数据、补充篇:盘点6种使用Python批量合并同一文件夹内所有子文件夹下的...Excel文件内所有Sheet数据、手把手教你用Python批量实现文件夹下所有Excel文件的第二张表合并。...这篇文章主要盘点一个Python自动化办公的实用案例,这个案例可以适用于实际工作中文件处理,大家也可以稍微改进下,用于自己的实际工作中去,举一反三。
[TOC] PS 数组和哈希表 描述:数组引入PS会将命令执行后的结果文本按每一行作为元素存为数组,在命令的返回值不止一个结果时,PS也会自动把结果存储为数组。...数组的多态:PS中数组像变量一样如果数组中元素的类型为弱类型,默认可以存储不同类型的值。...8 #所以给数组增加元素其实相当于创建一个新的数组,只不过之后会把原来的副本删除。...() #一个新的数组不是两个变量指向同一个数组 PS > $arr2.Equals($arr) #这里是为False False PS > $arr2[0]=1024 PS > $arr2 1024...在创建哈希表时就使用数组,因为创建数组和哈希表的的元素关键字不冲突一个是逗号,一个是分号。
htm 这些命令创建并打开一个 HTML 页,该页列出了本地计算机上进程的名称、路径和所属公司。 第一个命令使用 Get-Process cmdlet 获取用来表示计算机中运行的进程的对象。...它使用 Encoding 参数将输出转换为 ASCII 格式。它使用 Width 参数将文件中的每一行限制为 50 个字符。由于输出的行在 50 个字符处被截断,因此将省略进程表的最右列。...因为 Get-Service 的 ComputerName 参数不使用 Windows PowerShell 远程处理,所以即使未将计算机配置为在 Windows PowerShe ll 中进行远程处理...11.Out-File 命令输出到文件每一行记录的默认宽度大小为多少个字符?是否有一个参数可以修改这个宽度? -Width 指定输出的每一行中的字符数。将截断任何额外字符,不换行。...(提示:记得使用类似“objiec”的单词名好过使用类似“objiects”的复数名词) 求解 16.如何获取到更多关于数组(array)的帮助信息? 求解
,因此可以把数据保存在变量中,以便进一步操作,powershell 不需要显示地去声明,可以自动创建变量,只须记住变量的前缀为$。...当我们把一个外部命令的执行结果保存到一个变量中时,Powershell会把文本按每一行作为元素存为数组。...| fl * 数组 #使用逗号创建数组 $nums=2,0,1,2 #创建连续数字的数组 $nums=1..5 #创建空数组 $a=@() #判断是否是一个数组 $a -is [array] #得到数组里元素的个数...ForEach-Object: 针对每一组输入对象执行操作。 Format-List: 将输出的格式设置为属性列表,其中每个属性均各占一行显示。 Format-Table: 将输出的格式设置为表。...Import-Clixml: 导入 CLIXML 文件,并在 Windows PowerShell 中创建相应的对象。
但是,建议: GitHub(国外)使用邮箱为:xxxxxx@gmail.com(为了装逼) Gitee码云(国内)、Coding(国内)使用国内邮箱:如QQ邮箱、163邮箱等等。...三、删除Github中已有的仓库(即删除远程仓库) 三箭齐发,太累了,以下演示仅以GitHub为例。其余的同理。 如果我们想要删除Github中没有用的仓库,应该如何去做呢?...七、如何使用git将本地仓库连接到多个远程仓库 1、先在GiuHub(国外)、Gitee码云(国内) 和 Coding(国内) 上分别新建一个远程仓库,参考“二、创建远程仓库”。...八、补充说明 Git CMD:Git中的Bash是基于CMD的,在CMD的基础上增添一些新的命令与功能。...(所以建议在使用的时候,用Bash更加方便,二者切换如下图所示) Git GUI:Git GUI是Git Bash的替代品,为Windows用户提供了更简便易懂的图形界面。
25.765625KB: 文件名:alias 文件大小11.77734375KB: For 语句 描述: 当指定的条件为 true 时,for 循环会进行循环访问,在PS中应该使用较少。...PS会将命令执行后的结果文本按每一行作为元素存为数组,在命令的返回值不止一个结果时,PS也会自动把结果存储为数组。...3.数组的引用性: 使用默认的的赋值运算符在两个变量之间赋值只是复制了一个引用两个变量共享同一份数据,则改变一个另一个也会相应的改变; 常规数组 描述: 前面我们说明Powershell会把命令执行返回文本按每一行作为元素存为数组...PS > $arr=1..3 PS > $arr+=5..8 PS > $arr 1 2 3 5 6 7 8 # 所以给数组增加元素其实相当于创建一个新的数组,只不过之后会把原来的副本删除。...Tips: 在创建哈希表时就使用数组,因为创建数组和哈希表的的元素关键字不冲突一个是逗号,一个是分号。
强制创建: 垂直窗格中,按 Alt + Shift + + 或 水平窗格,按 Alt + Shift + - 要在新窗格中打开另一个配置文件,请在从下拉菜单中选择时按住 Alt 键。...Profile 个人资料设置 通过在 profile、list 数组中创建一个对象组来定义新的配置文件。一个 WSL2 Ubuntu 的例子。...24 位 PNG 是最好的选择;不幸的是,不支持 SVG hidden 如果设置为 true,则配置文件不会显示在下拉菜单中 fontFace 使用特定的字体 fontSize 使用特定的字体磅值整数...创建自己的配色方案 你可以在 settings.json 的“方案”数组中定义自己的方案对象。每种颜色均以十六进制值定义。...Ctrl + F 打开搜索框,则可以在 settings.json 中的 ”keybindings” 数组中添加一行:tab "keybindings": [ { "command": "find
上一篇文章讲解了Powershell通过交互环境运行命令的相关知识,今天给大家介绍实际工作当中使用最频繁的方式——通过脚本运行,简单来说就是和咱们实际编写代码一样,先编写代码,然后通过开发工具执行。...同样的为了实现PowerShell脚本的保存、方面在别的服务器迁移,一般都是先编写脚本,然后通过脚本文件执行完成相应的运维任务。...首先打开 WindowPowerShell ISE 开发环境新建一个test.ps1,脚本内容如下:$arr1=1..10 #定义一个1~10的数组 $arr1 #打印数组一、四种执行方式介绍1、当前文件夹运行命令进入存放脚本文件的命令...输入上面的命令后会提示我们如何对策略进行修改,这里我们选择y,然后按下回车键。...首先打开Windows任务计划程序创建一个计划任务打开创建计划任务常规选项卡,然后输入名称和描述,具体如下图:切换到触发器选项卡,设置每五分钟执行一次。
Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。...每执行一条RUN 指令,镜像添加新的一层,并提交; 最后是 CMD 指令,来指明运行容器时的操作命令。...FROM 指令必是 Dockerfile 文件中的首条命令,启动构建流程后,Docker 将会基于该镜像构建新镜像,FROM 后的命令也会基于这个基础镜像。...目标路径不需要事先创建,如果目录不存在会在复制文件前先行创建缺失目录。 此外,还需要注意一点,使用 COPY 指令,源文件的各种元数据都会保留。比如读、写、执行权限、文件变更时间等。...也就是说,每次使用镜像创建容器时,通过 ENTRYPOINT 指定的程序都会被设置为默认程序。
Export-Clixml: 创建对象的基于 XML 的表示形式并将其存储在文件中。...ForEach-Object: 针对每一组输入对象执行操作。 Format-List: 将输出的格式设置为属性列表,其中每个属性均各占一行显示。 Format-Table: 将输出的格式设置为表。...Import-Clixml: 导入 CLIXML 文件,并在 Windows PowerShell 中创建相应的对象。...例如,可以在命令中使用此变量确定是否已创建某个配置文件: 也可以在命令中使用此变量创建配置文件: new-item -type file -path $pshome -force 此外,还可以在命令中使用此变量在记事本中打开配置文件...; 1.弱类型的缺点: 有一个变量要存储的是即将拷贝文件的个数,可是在赋值时付了一个字符串,Powershell不会去做过多的判断,它会更新这个变量的类型,并且存储新的数据。
如何处理命令的信息流数据。...:默认情况下会Out-String 累积字符串并将其作为单个字符串返回,但是您可以使用Stream 参数直接指示一次Out-String返回一行,也可以创建字符串数组。...,请将输出存储到变量,然后使用数组索引查看元素。...Format-List 命令 - 将输出的格式设置为属性列表,其中每个属性均各占一行显示。...Format-Wide 命令 - 将对象的格式设置为只能显示每个对象的一个属性的宽表 基础示例: # Example 1: 格式化当前目录中的文件名 Get-ChildItem | Format-Wide
引言 使用 CI ( 例如 GitHub Actions ) 自动部署 Hexo 会导致所有文章 更新于 时间统一变成 GitHub Actions 生成部署的时间, 有3中解决方法: 给每篇文章手动添加...updated 字段, 并每次更新文章, 手动更新 在 CI 的步骤中 利用 git log 通过 touch 的方式 修改文件的更新时间为 最后一次 commit 的时间 ( 见 Hexo 笔记 )...本文 利用 powershell 一键更新 updated, 其实也是利用的 git log 主要是考虑到 文件属性的修改时间 不便查看,以及当换电脑时, 重新从 git 仓库 clone 下来的文件...| 经验摘录 PowerShell 数组(Array)_公众号:SQLServer-CSDN博客_powershell 数组 hexo自动更新文章修改时间 | Black Flies PowerShell..._33785972的博客-CSDN博客 使用PowerShell读取文件数据_culuo4781的博客-CSDN博客 powershell字符串操作 - 一个有故事的devops - 博客园 本文作者:
,三个不同平台的命令,在powershell中均可使用,即别名机制。...数组: a.创建数组:常规数组可以使用逗号,连续数字数组可以使用。 ? 其中有以下两个特例: 空数组: ? 一个元素数组: ?...c.哈希表的使用:之前创建空数组是使用@(),而创建哈希表用到的是@{},此处的哈希表同python中的字典类型类似: ?...脚本: a).创建脚本(以.ps1为后缀) ●通过重定向创建脚本: ? ●通过编辑器创建脚本: 通过txt来编写 ? ●通过powershell自带的ISE或者其他编写工具: ?...通过命令直接算出距离明年的今天有多少天。 ? 通过命令获取当前PC中跑了多少进程。 ? 查看Windows目录下所有文本文件txt的大小。 ? 可将数据输出为HTML格式、CSV格式等。 ?
在我们的迷你系列“Variables in Shells”中,了解如何在PowerShell中处理局部变量。...注意:本文中的示例来自在开源操作系统Linux上运行的PowerShell会话,因此,如果你使用的是Windows或Mac,文件路径会有所不同。...下面的示例创建一个名为“FOO”的新变量,并将其值设置为字符串$ HOME / Documents:什么是变量?...在PowerShell中,变量具有多种类型,包括字符串,整数和数组。 选择创建一个实质上具有多个值的变量时,必须确定是否需要用字符分隔的字符串或数组。...要将数据附加到字符串变量,请使用“+ =”语法: 屏幕快照 2019-11-24 下午6.02.37.png 数组是PowerShell中的特殊类型的变量,需要ArrayList对象。
我们可以使用Export-Csv命令将PowerShell中的对象转换为CSV格式,持久化到磁盘上。...SQL中的游标,对于每一行数据,都进行一个运算或者函数处理。...在PowerShell中对应的命令是ForEach-Object,可以简写为ForEach,还可以进一步简写为”%“。...比如我们要将VM改为MB为单位,可以对每一行数据进行运算: $data | % {$_.VM=$_.VM/1MB} 运行该命令后我们再查看$data就会发现VM列已经改变了。...比如我们想把某一列写入一个文件,我们可以在-Begin时创建文件,记录开始的时间,然后Foreach中Append内容到文件,最后把结束时间写入: $data | % -Begin { Get-Date
Export-Clixml: 创建对象的基于 XML 的表示形式并将其存储在文件中。...ForEach-Object: 针对每一组输入对象执行操作。 Format-List: 将输出的格式设置为属性列表,其中每个属性均各占一行显示。 Format-Table: 将输出的格式设置为表。...Import-Clixml: 导入 CLIXML 文件,并在 Windows PowerShell 中创建相应的对象。...在对管道中的每个对象或所选对象执行操作的命令中,可以使用此变量。 $Args : 包含由未声明参数和/或传递给函数、脚本或脚本块的参数值组成的数组。...例如,可以在命令中使用此变量确定是否已创建某个配置文件: 也可以在命令中使用此变量创建配置文件: new-item -type file -path $pshome -force 此外,还可以在命令中使用此变量在记事本中打开配置文件
那么,如何进入Powershell呢? 一种方法是在运行中直接输入Powershell打开,另一种方法是CMD中输入Powershell打开。 ? ? ?...如果只获取其中的name、mode值,则使用如下指令。 ? ? 2.重定向 重定向旨在把命令的输出保存到文件中,‘>’为覆盖,’>>’追加。 ?...注意:自定义别名是临时生效的,当关闭Powershell时就会失效。 2.自定义别名 设置别名,将notepad设置为新的别名pad。pad打开notepad,表明我们的别名创建成功。 ? ?...当前进程的标志符,该自动化内置变量只能读取,不能写入。 ? ? 4.环境变量 查看当前环境变量 ? ? 打印某个环境变量的值 ? ? 创建新的环境变量 ? ? 删除环境变量 ? ?...(3) 运行Powershell脚本文件也类似。 ? 运行结果如下图所示: ? ? 那么,如何在CMD中运行Powershell文件呢? 我们将demo.bat修改为如下内容,其中&表示运行。 ?
如何使用PowerShell批量删除注册表项 问题描述 注册表路径以及如何获得注册表子项 基于条件过滤删除项 For循环删除子项 问题描述 卸载了可牛压缩软件以后,发现右键菜单中仍然有可牛压缩的选项。...注册表路径以及如何获得注册表子项 在PowerShell中注册表也有路径,跟我们文件和文件夹路径类似,上面的注册表项的路径可以表示为: REGISTRY::\HKEY_USERS\S-1-5-21-3610452307...-1001\Software\Classes\" $items = (l -Path $root) 第一行定义注册表路径,第二行得到该路径下的所有子项,结果为Array数组类型。...{$_.PSPath -like "*kzip_main.exe*"} 其中,|为管道运算符,将操作符前面的结果传递到操作符后面的处理中。...命令选择出来要删除的元素以后,我们可以使用ForEach_Object命令(别名foreach或者%)遍历该数组删除所有元素,代码如下: $items | % {rm -Force -Recurse $
领取专属 10元无门槛券
手把手带您无忧上云