WindowsTerminal 美化-壁纸随机更换

ops/2024/10/18 9:22:50/

目录

  • 一. 相关网址
  • 二. 壁纸随机更换思路
  • 三. 指定 WindowsTermina 壁纸路径
  • 四. 编写脚本,随机替换壁纸
    • 4.1 powershell脚本
    • 4.2 .bat批处理脚本
  • 四. 配置定时任务,添加触发器
  • 五. 效果


一. 相关网址

  • 官方下载
    • Windows Terminal 官方Github
    • 微软商店
  • 美化
    • Oh My Posh
    • windowsterminalthemes
    • 微软官方Windows终端设置教程

二. 壁纸随机更换思路

  • WindowsTerminal的壁纸在其settings.json文件中可自定义指定
  • 编写脚本,读取指定文件夹下的所有壁纸文件,随机获取一张壁纸
  • 将壁纸复制到settings.json中指定的路径下,若有既存的文件,强制覆盖
  • 配置定时任务,设置触发器,在用户启动电脑的时候,触发脚本执行

三. 指定 WindowsTermina 壁纸路径

⏹如下图所示,指定壁纸的路径和透明度

在这里插入图片描述

四. 编写脚本,随机替换壁纸

⏹文件夹详情

在这里插入图片描述

4.1 powershell脚本

change_background_image.ps1

# 父文件夹
$Paretn_Path = 'F:\99-Windows_Terminal\'
# 壁纸文件夹
$Wallpaper_BK_Path = "$($Paretn_Path)\02-Wallpaper_BK\"
# Windows_Terminal所需壁纸文件路径
$Wallpaper_Path = "$($Paretn_Path)\01-Wallpaper\img.jpg"# 递归获取所有的壁纸的绝对路径
$Wallpaper_list = Get-ChildItem -Path $Wallpaper_BK_Path -Recurse -File `
| ForEach-Object { $_.FullName }# 从所有的壁纸中随机获取一张壁纸下标
$Random_Wallpaper_Index = Get-Random -Minimum 0 -Maximum (($Wallpaper_list | Measure-Object).Count - 1)
# 获取要移动的壁纸对象
$Random_Wallpaper_Full_Path = $Wallpaper_list[$Random_Wallpaper_Index]# 复制壁纸路径到指定指定文件夹中,如果有同名文件直接强制覆盖
Copy-Item -Path $Random_Wallpaper_Full_Path -Destination $Wallpaper_Path -Force

4.2 .bat批处理脚本

change_background_image.bat

  • 部分电脑可能禁用PowerShell代码,因此提供.bat批处理脚本
  • 由于批处理的代码晦涩难懂,此处将批处理代码与PowerShell代码相结合,在批处理中文件中调用批处理文件中内含PowerShell代码
@(echo '> NUL
echo off)setlocal ENABLEDELAYEDEXPANSIONset ARGV0=%~f0
set ARGS=%*
set ARGC=0for %%V in (%*) do (set /a ARGC=!ARGC!+1set ARGV!ARGC!=%%V
)PowerShell.exe -Command "Invoke-Expression -Command ((Get-Content \"%ARGV0: `=` `%\") -join \"`n\")"
exit /b %errorlevel%
') | Out-Null# -------------------以下为PowerShell代码部分-------------------$argc=$ENV:ARGC
$argv=@()
for($i=0;$i -le $argc;$i++){$argv += (Get-ChildItem "ENV:ARGV$i").Value
}# -------------------PowerShell代码处理的主体部分-------------------# 父文件夹
$Paretn_Path = 'F:\99-Windows_Terminal\'
# 壁纸文件夹
$Wallpaper_BK_Path = "$($Paretn_Path)\02-Wallpaper_BK\"
# Windows_Terminal所需壁纸文件路径
$Wallpaper_Path = "$($Paretn_Path)\01-Wallpaper\img.jpg"# 递归获取所有的壁纸的绝对路径
$Wallpaper_list = Get-ChildItem -Path $Wallpaper_BK_Path -Recurse -File `
| ForEach-Object { $_.FullName }# 从所有的壁纸中随机获取一张壁纸下标
$Random_Wallpaper_Index = Get-Random -Minimum 0 -Maximum (($Wallpaper_list | Measure-Object).Count - 1)
# 获取要移动的壁纸对象
$Random_Wallpaper_Full_Path = $Wallpaper_list[$Random_Wallpaper_Index]# 复制壁纸路径到指定指定文件夹中,如果有同名文件直接强制覆盖
Copy-Item -Path $Random_Wallpaper_Full_Path -Destination $Wallpaper_Path -Force

四. 配置定时任务,添加触发器

⏹任务计划程序

  • 快捷键:Win + R打开运行窗口
  • 在运行窗口内输入taskschd.msc,打开任务计划程序

⏹在操作选项卡中,点击创建基本任务,打开任务创建向导。

在这里插入图片描述

⏹当我们使用powerhell脚本时,需要指定通过powershell.exe来运行,还需要配置脚本的参数,指定脚本路径

在这里插入图片描述

⏹由于是开机启动的脚本,还需要配置完成之后,在属性选项卡中进行如下配置。

在这里插入图片描述


五. 效果

⏹按照上述配置之后,每次开机或重启之后,WindowsTerminal的壁纸就会更换。
也可根据需求,选择工作站锁定时工作站解锁时,触发脚本执行。

在这里插入图片描述


http://www.ppmy.cn/ops/122188.html

相关文章

【重学 MySQL】四十七、表的操作技巧——修改、重命名、删除与清空

【重学 MySQL】四十七、表的操作技巧——修改、重命名、删除与清空 修改表添加字段语法示例注意事项 删除字段语法示例 修改字段使用 MODIFY COLUMN语法示例 使用 CHANGE COLUMN语法示例 重命名表语法示例 删除表语法示例 清空表使用 TRUNCATE TABLE使用 DELETE FROM对比 TRUNC…

Pytorch常见坑(不断更新)

一、基本错误 1、UserWarning: Grad strides do not match bucket view strides. This may indicate grad was not created according to the gradient layout contract, or that the params strides changed since DDP was constructed. This is not an error, but may impa…

异常场景分析

优质博文:IT-BLOG-CN 为了防止黑客从前台异常信息,对系统进行攻击。同时,为了提高用户体验,我们都会都抛出的异常进行拦截处理。 一、异常处理类 Java把异常当做是破坏正常流程的一个事件,当事件发生后,…

Java中TreeMap,HashMap和LinkedHashMap的区别

先决条件:Java 中的 HashMap 和 TreeMap TreeMap、HashMap 和 LinkedHashMap:有什么相似之处? 所有类都提供键->值映射和遍历键的方法。这些类之间最重要的区别是时间保证和键的顺序。 HashMap、TreeMap 和LinkedHashMap三个类都实现了…

51单片机系列-按键检测原理

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 独立按键是检测低电平的。 下面我们来看一张对应的电路原理图: 在这张图当中,P1,P2,P3内部都上拉了电阻,但是P0没有&am…

【机器学习】知识总结1(人工智能、机器学习、深度学习、贝叶斯、回归分析)

目录 一、机器学习、深度学习 1.人工智能 1.1人工智能概念 1.2人工智能的主要研究内容与应用领域 1.2.1主要研究内容: 1.2.2应用领域 2.机器学习 2.1机器学习的概念 2.2机器学习的基本思路 2.3机器学习的分类 3.深度学习 3.1深度学习的概念 3.2人工智能…

git使用指南

一、下载 1.下载地址 官网地址 Git - Downloads (git-scm.com) 镜像地址 CNPM Binaries Mirror (npmmirror.com) 百度网盘提取 尽量使用上面的两种,锻炼一下自己 链接: https://pan.baidu.com/s/1rOJCc-aGUNFa-LpoTE6kYw 提取码: 1111 2.下载步骤 官网…

排队打水(贪心)

有 nn 个人排队到 11 个水龙头处打水,第 ii 个人装满水桶所需的时间是 titi,请问如何安排他们的打水顺序才能使所有人的等待时间之和最小? 输入格式 第一行包含整数 nn。 第二行包含 nn 个整数,其中第 ii 个整数表示第 ii 个人…