小编Mic*_*ngs的帖子

Windows中的UTF-8

如何在C Windows程序中将代码页设置为UTF-8?

我有一个第三方库,使用fopen打开文件.我可以使用wcstombs将我的Unicode文件名转换为当前代码页,但是如果用户的文件名在代码页之外有一个字符,则会中断.

理想情况下,我只需调用_setmbcp(65001)将代码页设置为UTF-8,但_setmbcp的MSDN文档声明不支持UTF-8.

我怎么能绕过这个?

c windows unicode winapi utf-8

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

如何使用scrypt在Python中生成密码和salt的哈希值

我想用scrypt为我的用户的密码和盐创建一个哈希.我找到了两个 引用,但有一些我不了解它们.

他们使用scrypt加密和解密函数.一个加密随机字符串,另一个加密盐(看起来不对,因为只有密码而不是盐用于解密).看起来解密函数用于验证密码/ salt是解密的副作用.

基于我所理解的一点点,我想要的是密钥导出函数(KDF)而不是加密/解密,并且KDF很可能由scrypt生成并用于加密/解密.实际的KDF在幕后使用,我担心盲目跟随这些例子会导致错误.如果scrypt加密/解密函数用于生成和验证密码,我不明白加密字符串的作用.它的内容或长度是否重要?

python password-encryption scrypt

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

在 Jenkins 管道中的并行阶段设置依赖项或优先级

我正在执行并行步骤 -

stages {
    stage ('Parallel build LEVEL 1 - A,B,C ...') {
        steps{
            parallel (
                "Build A": {
                    node('Build_Server_Stack') {
                        buildAndArchive(A) // my code
                    }
                },
                "Build B" : {
                    node('Build_Server_Stack') {
                        buildAndArchive(B)
                    }
                },
                "Build C" : {
                    node('Build_Server_Stack') {
                        buildAndArchive(C)
                    }
                }
            )
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我要求在C完成后开始执行B。我可以将 B 作业从并行块中取出并添加到并行块之后来实现此目的。但在这种情况下,B 在 A 和 C 完成之前不会启动。对于长时间的 A 作业,当您有空闲的构建服务器可用时,这会影响性能。我们能否解决/改进执行计划以并行运行,但并行步骤具有“依赖性”或“优先级”。促销插件中也存在类似的机制,但需要在管道中实现。

parallel-processing jenkins jenkins-pipeline

6
推荐指数
2
解决办法
5246
查看次数

在 bash 中执行生成的命令

我想运行由 Python 脚本生成的一系列 bash 命令。命令的形式为export foo="bar"alias foo=bar。他们必须修改当前进程的环境。

这很好用:

$(./generate_commands.py)
Run Code Online (Sandbox Code Playgroud)

直到导出命令包含空格,例如export x="a b"。这会生成错误,并且仅"a被导出(包括引号)。

目前我正在通过将generate_commands输出到临时文件并获取它来解决这个问题,但是有没有更优雅的解决方案?

bash

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