小编Sha*_*boz的帖子

Powershell:输出文件 - 访问路径被拒绝

我有一个用于下载 PDF 文件的 REST 调用 (POST)。API 调用以 PDF 文件的二进制版本进行响应。我想将文件以 .pdf 格式保存在我的计算机上。但是,我收到错误:

\n
\nOut-File : 拒绝访问路径 \'C:\\Users\\my-name\\Documents\\Tests\'。\n在 C:\\Users\\my-name\\Documents\\Tests \\TEST-WITH-LOOP.ps1:132 字符:149\n+ ... questBody | Out-File -FilePath ("C:\\Users\\我的名字\\Documents\\Tests\n+ ~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n + CategoryInfo : OpenError: (:) [输出文件],UnauthorizedAccessException\ n + FullQualifiedErrorId : FileOpenFailure、Microsoft.PowerShell.Commands.OutFileCommand\n
\n

来自 POSTMAN 的响应正文标头:

\n
\n内容处置 \xe2\x86\x92 附件;文件名 =“Report-01_29_14-28.pdf”\n内容类型 \xe2\x86\x92application/octet-stream\nDataServiceVersion \xe2\x86\x922.0\n日期 \xe2\x86\x92Mon,2018 年 1 月 29 日 21:51 :31 GMT\n日期 \xe2\x86\x92Mon,2018 年 1 月 29 日 21:51:31 GMT\n服务器 \xe2\x86\x92Jetty(9.3.7.v20160115NeotysEdition.30)\n传输编码 \xe2\x86\x92chunked\n
\n

命令:

\n
$DownloadReportResponse = Invoke-RestMethod -Method Post -Uri $DownloadReportUrl -ContentType "application/json" …
Run Code Online (Sandbox Code Playgroud)

rest powershell scripting

9
推荐指数
1
解决办法
3万
查看次数

如何安装 Jenkins Ubuntu slave 作为服务?

我有一台 Ubuntu 16.04 LTS 机器,我通过 JNLP 连接成功连接到 Jenkins 服务器。我为连接采取的步骤如下:

  1. 在从属设备中创建一个名为 /home/MyUbuntu/Jenkins 的目录
  2. 将 agent.jar 和 slave-agent.jnlp 文件下载到目录中
  3. 从终端运行此命令:

java -jar agent.jar -jnlpUrl http://my-jenkins-server:8080/computer/MyNode/slave-agent.jnlp -secret 6f8bb3250d6dbcda77979797997b0ea6bcaaa064785d558c0e3home /MyNode/slave-agent.jnlp -secret

连接成功。

问题: 一旦我关闭终端,连接就会断开。

问题: 如何在 Ubuntu 16.04 LTS 中将此添加为服务,以便每当机器重新启动时,它都会作为启动启动???

linux jenkins

6
推荐指数
1
解决办法
4336
查看次数

运行 ADB Shell,然后在 Python 中与控制台应用程序交互

我遇到一种情况,我需要运行命令来adb shell获取设备的根访问权限。

然后,我使用以下命令在我的设备上运行交互式控制台应用程序:/oem/console --no-logging

该命令返回以下输出:

  • 控制台进程:连接到应用程序...
  • 控制台进程:连接到应用程序...

之后,我需要按 ENTER 以便控制台接受事件(箭头光标已准备好接受调用事件)。这个控制台应用程序接受某些事件,我可以模拟我的设备的行为。例如:

  1. invoke put.device.into.charge 1
  2. invoke call.cell.hangup 1
  3. invoke xyz

所以我的问题是,如何将这些命令逐一输入到此控制台应用程序中,并在每个命令后等待几秒钟?

这是我到目前为止的代码:

def run_adb_shell_command(command, return_process=False):
    """Run an ADB shell command."""
    cmd = command.split()
    process = Popen(cmd, stdin=subprocess.PIPE)
    if return_process:
        return process



def send_command_to_console_app(command, process):
    """SEND Commands to Console App."""
    new_line = '\n'.encode()
    # encoded_command = str(command).encode()
    s0 = command
    s1 = 'event 1'
    s2 = 'event 2'
    s3 = 'event 3'
    concat_query = "{}\n".format(s0)

    process.communicate(input=concat_query.encode('utf-8'))[0]
    process.kill()
Run Code Online (Sandbox Code Playgroud)

问题是,当communicate() …

python android python-3.x

3
推荐指数
1
解决办法
255
查看次数

如何在powershell中中断嵌套的foreach循环

我有两个长度相同的列表。我需要进行迭代,以便列表 A 中的第一项与列表 B 中的第一项匹配。为此,我创建了一个嵌套的 foreach 循环,如下所示:

$nodes_table = "a","b","c"
$nodes_list = "a","b","c"

     :Outer foreach ($item in $nodes_table) {
        foreach($node in $nodes_list)
        {
            if($node -eq $item)
            {
                Write-Output "$node hostname matches in vTM"
                break :Outer
            }           
        }        
    }
Run Code Online (Sandbox Code Playgroud)

问题: 在第一次迭代中,它匹配。但在第二次迭代中,内部循环不会转到第二项,而是再次重置。

First iteration: $node = a equals $item = a
Second iteration: $node = a not equals to $item = b.
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,在第二次迭代中,内循环没有迭代,它重置回a。

powershell

2
推荐指数
1
解决办法
9297
查看次数

如何从powershell脚本中的列表中查询

我有以下 json 格式的响应:

{
    "properties": {
        "basic": {
            "nodes_table": [
                {
                    "node": "node1.prod.local:80",
                    "state": "active",
                    "weight": 1
                },
                {
                    "node": "node2.prod.local:80",
                    "state": "disabled",
                    "weight": 1
                },
                {
                    "node": "node3.prod.local:80",
                    "state": "disabled",
                    "weight": 1
                },
                {
                    "node": "node4.prod.local:80",
                    "state": "disabled",
                    "weight": 1
                },
                {
                    "node": "node5.prod.local:80",
                    "state": "active",
                    "weight": 1
                }
            ]
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我试图在 powershell 脚本中执行的操作是查明给定节点在nodes_table 中是否可用并获取它们的状态。例如:

$nodes_table_hostnames = $GetNodesResponse.properties.basic.nodes_table.node
$nodes_table_status = $GetNodesResponse.properties.basic.nodes_table.state

if($nodes_table_hostnames -contains "node1.prod.local:80" -and $nodes_table_status -eq "active")
    {
        Write-Output  "Node matches and is Active"
    }
Run Code Online (Sandbox Code Playgroud)

问题: …

powershell

1
推荐指数
1
解决办法
1223
查看次数

Python 请求负载格式

我正在使用 requests 库处理 POST 请求。

如果我在有效负载中使用回车符,我的帖子请求工作正常,如下所示:

payload = "{\r\n        \"name\": \r\n        {\r\n            \"@action\": \"login\",\r\n            \"@appname\": \"app\",\r\n            \"@class\": \"login\",\r\n            \"@nocookie\": 1,\r\n            \"@code\": \"101\",\r\n            \"@psw\": \"12345\",\r\n            \"@relogin\": \"0\",\r\n            \"@username\": \"user123\"\r\n        }\r\n}\r\n"
Run Code Online (Sandbox Code Playgroud)

但是,如果我对其进行格式化以使有效负载看起来很漂亮,则请求将不起作用:

payload = { 
    'name': 
        { 
            '@action': "login", 
            '@appname': "app", 
            '@class': "login", 
            'nocookie': 1, 
            '@code': "101", 
            'psw': "12345", 
            '@relogin': "0", 
            '@username': "user123" 
        } 
} 
Run Code Online (Sandbox Code Playgroud)

我使用第二个有效负载时收到 500 错误。第一个有效负载按预期工作。有任何想法吗?

python

1
推荐指数
1
解决办法
6224
查看次数

标签 统计

powershell ×3

python ×2

android ×1

jenkins ×1

linux ×1

python-3.x ×1

rest ×1

scripting ×1