假设我需要在创建特定文件类型之前执行某些任务,但然后我想运行通用规则:
foo.bar:
# do something to prepare to make foo.bar
%.bar:
# generate the `.bar` filetype
我如何评估为某些特定准备工作foo.bar
定义的通配符配方来生成?foo.bar
假设我需要在创建特定文件类型之前执行某些任务,但然后我想运行通用规则:
foo.bar:
# do something to prepare to make foo.bar
%.bar:
# generate the `.bar` filetype
我如何评估为某些特定准备工作foo.bar
定义的通配符配方来生成?foo.bar
在 BASH 中,我可以通过 jq 将 JSON 存储到环境变量中:
export FOO=$(curl ... | jq -Rs)
现在,如果我将其加载到 python 中:
bar=os.environ["FOO"]
bar
会有类似: 的内容{\\"this\\":\\"that\\"}
,这是使用以下内容加载时出现的问题json
:
json.loads(bar) # error
我已经尝试了一些方法,包括repr
、rf'{os.environ["FOO"]}'
等等,但似乎没有一种内部管理的方法来删除额外的斜杠。
如何通过字符串函数删除多余的斜杠?我不想简单地用单个斜杠替换它们,因为将来我可能不得不再次触及该代码。
假设我有一个字符串:
"password"
它可以是转换为文本的加密安全字符串的形式。可以通过以下方式解密此安全字符串文本ConvertFrom-SecureString
以恢复“密码”:
"1213132131....1232131" | ConvertFrom-SecureString |%{echo $_}
password
有没有办法让 powershell 告诉我输入的字符串是否已经解密?
或者我是否需要设计一些其他方法来判断输入字符串是纯文本还是加密为安全字符串?
假设我有一个复杂的 bash 脚本:
x.sh
#! /bin/bash
. include/this/script.sh
. include/this/other/script.sh
...
foo="foo$bar"
echo $foo
是否有某种设置或方法可以使 BASH 回显它来源的所有源代码,包括我调用它时的主脚本,以便我确切地知道发生了什么?
动机:我正在尝试使用简单的 powershell 作业测试一些与进程相关的命令。但是,所有 powershell 作业在进程表中都被命名为“powershell”。所以我需要可以用来过滤输出的进程句柄Get-Process
。
因此,“更大”的问题可能更容易回答,但就目前情况而言,我认为只要我能够将 powershell 作业连接到其进程 ID(“句柄”),我就有一个解决方案。
如何从 powershell 作业获取进程 ID?(这不是 JobID)。
$job = Start-Job -Name $jobName -ScriptBlock { while($true){sleep -Seconds 1}}
$processes = Get-Process
$jobHandle = ???
$jobProcess = $processes |? {$_.Handle -eq $jobHandle}
如何获取以“???”表示的缺失信息 ?
处理 XY 问题并更一般地说,如果这是不可能的,因为所有内容都被继承到当前的 powershell 会话中,那么更大的问题是:如何创建一个任意命名或处理的进程,我可以从 powershell 执行任何操作,例如测试?
# how do I start this code block as an arbitrary named process?
name="test-Get-Foo.1.2"
{
while($true){
sleep -Seconds 2
}
}
# ???
$proc=Get-Process |? {$_.Name -like "test-Get-Foo*"}