- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从谈论我当前的 Powershell 脚本开始 - 但事实证明这更像是一个 C# 问题......
我有 3 个 Powershell 脚本,它们都按预期工作。第一个包括一个 GUI,允许用户选择各种功能。选择功能后,它会按顺序运行每个功能。但是,有几个需要重新启动本地计算机。例如重命名 PC 和加入域。
“重新启动”部分并不太麻烦,因为 - 在适当的时候 - 脚本会设置一个 RunOnce 注册表项,该注册表项会在重新启动完成后调用第二个脚本。如有必要(取决于所选的原始选项),它会设置另一个 RunOnce 键以在再次重启后调用第三个脚本。
到目前为止,我的问题是如何为重启后的进程保存变量/状态。
假设用户选择了 5 个选项...
-重命名机器-加入域-禁用休眠-配置WSUS-重置索引
我的第 3 个脚本包含最后 3 个项目和其他项目的函数。我希望第三个脚本“知道”最初选择了哪些选项/功能,并且只运行那些 - 而不是其他未被选择的。
现在我开始用 PS 编写这个,因为我的大部分任务都是系统配置,我觉得 PS 是更合适的语言。但是,我找不到按照我想要的方式完成此操作的方法。我在 C# 方面的经验“有限”——足以完成我想要的所有功能——或者至少使用 C# 作为调用 PS 脚本的包装器。但我不确定如何保存所选项目的状态,这些项目可以在任何后续重新启动时调用。
感谢任何回复。
谢谢!迈克
最佳答案
如果您只想保存一些变量及其值,以便稍后重新加载它们,您可以通过将它们写入文件,然后在脚本运行时重新加载该文件来完成此操作.它需要知道检查该文件。
我对 RunOnce key 一无所知,但也许您可以向脚本调用添加一个参数,以便向其提供恢复文件。
像这样:
此脚本接收 3 个参数,然后将它们写入 JSON 格式的文件。
param (
[Parameter()][string]$foo,
[Parameter()][string]$bar,
[Parameter()][int]$baz
)
Write-Host "Do some stuff"
Write-Host "Save state before rebooting"
$state = @{
'foo' = $foo;
'bar' = $bar;
'baz' = $baz;
};
$state | ConvertTo-Json | Set-Content -Path resume.json
这个脚本有 1 个参数,一个文件路径指向你刚刚用前面的脚本创建的 json 文件,它填充变量然后将它们吐出:
param (
[Parameter()][string]$StateFile
)
if ($StateFile) {
$state = Get-Content -Path $StateFile | ConvertFrom-Json
$foo = $state.foo;
$bar = $state.bar;
$baz = $state.baz;
}
Write-Host "foo: '$foo' | bar: '$bar' | baz: '$baz'";
注意:此脚本适用于保存/加载简单值类型,如字符串、数字、日期等。但如果您希望存储整个对象,则可能需要研究其他解决方案。或者想出一些方法来存储某些信息,以便您恢复该对象。
关于c# - PowerShell 脚本如何保存状态然后在计算机重新启动后继续?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65259909/
我尝试根据表单元素的更改禁用/启用保存按钮。但是,当通过弹出按钮选择更改隐藏输入字段值时,保存按钮不受影响。 下面是我的代码。我正在尝试序列化旧的表单值并与更改后的表单值进行比较。但我猜隐藏的字段值无
我正在尝试保存模型的实例,但我得到了 Invalid EmbeddedDocumentField item (1) 其中 1 是项目的 ID(我认为)。 模型定义为 class Graph(Docum
我有一个非常奇怪的问题......在我的 iPhone 应用程序中,用户可以打开相机胶卷中的图像,在我的示例中 1920 x 1080 像素 (72 dpi) 的壁纸。 现在,想要将图像的宽度调整为例
目前,我正在使用具有排序/过滤功能的数据表成功地从我的数据库中显示图像元数据。在我的数据表下方,我使用第三方图像覆盖流( http://www.jacksasylum.eu/ContentFlow/
我的脚本有问题。我想按此顺序执行以下步骤: 1. 保存输入字段中的文本。 2. 删除输入字段中的所有文本。 3. 在输入字段中重新加载之前删除的相同文本。 我的脚本的问题是 ug()- 函数在我的文本
任何人都可以帮助我如何保存多对多关系吗?我有任务,用户可以有很多任务,任务可以有很多用户(多对多),我想要实现的是,在更新表单中,管理员可以将多个用户分配给特定任务。这是通过 html 多选输入来完成
我在 Tensorflow 中训练了一个具有批归一化的模型。我想保存模型并恢复它以供进一步使用。批量归一化是通过 完成的 def batch_norm(input, phase): retur
我遇到了 grails 的问题。我有一个看起来像这样的域: class Book { static belongsTo = Author String toString() { tit
所以我正在开发一个应用程序,一旦用户连接(通过 soundcloud),就会出现以下对象: {userid: userid, username: username, genre: genre, fol
我正在开发一个具有多选项卡布局的 Angular 7 应用程序。每个选项卡都包含一个组件,该组件可以引用其他嵌套组件。 当用户选择一个新的/另一个选项卡时,当前选项卡上显示的组件将被销毁(我不仅仅是隐
我尝试使用 JEditorPane 进行一些简单的文本格式化,但随着知识的增长,我发现 JTextPane 更容易实现并且更强大。 我的问题是如何将 JTextPane 中的格式化文本保存到文件?它应
使用 Docker 相当新。 我为 Oracle 11g Full 提取了一个图像。创建了一个数据库并将应用程序安装到容器中。 正确配置后,我提交了生成 15GB 镜像的容器。 测试了该图像的新容器,
我是使用 Xcode 和 swift 的新手,仍在学习中。我在将核心数据从实体传递到文本字段/标签时遇到问题,然后用户可以选择编辑和保存记录。我的目标是,当用户从 friendslistViewCon
我正在用 Java 编写 Android 游戏,我需要一种可靠的方法来快速保存和加载应用程序状态。这个问题似乎适用于大多数 OO 语言。 了解我需要保存的内容:我正在使用策略模式来控制我的游戏实体。我
我想知道使用 fstream 加载/保存某种结构类型的数组是否是个好主意。注意,我说的是加载/保存到二进制文件。我应该加载/保存独立变量,例如 int、float、boolean 而不是结构吗?我这么
我希望能够将 QNetworkReply 保存到 QString/QByteArray。在我看到的示例中,它们总是将流保存到另一个文件。 目前我的代码看起来像这样,我从主机那里得到一个字符串,我想做的
我正在创建一个绘图应用程序。我有一个带有 Canvas 的自定义 View ,它根据用户输入绘制线条: class Line { float startX, startY, stopX, stop
我有 3 个 Activity 第一个 Activity 调用第二个 Activity ,第二个 Activity 调用第三个 Activity 。 第二个 Activity 使用第一个 Activi
我想知道如何在 Xcode 中保存 cookie。我想使用从一个网页获取的 cookie 并使用它访问另一个网页。我使用下面的代码登录该网站,我想保存从该连接获得的 cookie,以便在我建立另一个连
我有一个 SQLite 数据库存储我的所有日历事件,建模如下: TimerEvent *Attributes -date -dateForMark -reminder *Relat
我是一名优秀的程序员,十分优秀!