相关疑难解决方法(0)

以与 Java 相同的方式使用 OpenSSL 进行加密

我必须使用 bash 脚本加密字符串,就像使用 javax.crypto.Cipher 加密一样。在 java 中,我使用带有密钥“0123456789”的 AES-256。但是当我使用openssl时,我不得不将“0123456789”转换为十六进制,但结果与java不同

echo "lun01" | openssl aes-256-cbc -e -a -K 7573746f726530313233343536373839 -iv 7573746f726530313233343536373839
Run Code Online (Sandbox Code Playgroud)

dpMyN7L5HI8VZEs1biQJ7g==

爪哇:

public class CryptUtil {
    public static final String DEFAULT_KEY = "0123456789";

    private static CryptUtil instance;

    private String chiperKey;

    private CryptUtil(String chiperKey) {
        this.chiperKey = chiperKey;
    }

    public static CryptUtil getInstance() {
        if (null == instance) {
            instance = new CryptUtil(DEFAULT_KEY);
        }

        return instance;
    }

    public static CryptUtil getInstance(String cipherkey) {
        instance = new CryptUtil(cipherkey);
        return instance;
    }

    public String …
Run Code Online (Sandbox Code Playgroud)

java encryption openssl javax.crypto

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

是否可以在批处理/ cmd中回显一些不可打印的字符?

动机

我有一个第三方,不知何故长.bat文件为某些特定功能编写,并将需要相当大的努力重写(这个努力也受到我的问题的阻碍).在for循环中,调试它的最基本方法似乎是将一些信息回显到屏幕上.我曾经\r在其他语言中使用(0x0D)字符执行此操作,在某些终端/控制台上重写相同的行(以避免过度浮动,因为在我的情况下,最后一行将包含错误).我已经将值保存到变量中.但是,由于迭代可能需要很长时间,我仍然乐意将一些输出写入不会过冲的屏幕.

我试过的

  • 我知道我可以在回显一个单一换行符cmdecho.-但我只需要回车
  • 我尝试过这些,但他们的工作我以前不:echo \r,echo ^r,echo \x0d,echo ^x0d,echo #0d,echo ^#0d,echo #x0d,echo ^x0d
  • 我试图在没有太多帮助的情况下为类似的东西抢劫网

是否有可能以某种方式回显windows/dos/nt/cmd批处理文件中的回车符(或其他不可打印的)字符?

PS.我使用的是XP或7 cmd处理器

windows cmd batch-file carriage-return non-printing-characters

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

Windows cmd:没有新行但使用CR的echo

我想在Windows批处理文件中的循环内写相同的行.例如:

setlocal EnableDelayedExpansion
set file_number=0
for %%f in (*) do (
  set /a file_number+=1
  echo working on file number !file_number!
  something.exe %%f
)
setlocal DisableDelayedExpansion
Run Code Online (Sandbox Code Playgroud)

这将导致:

echo在文件号1上工作

echo在文件号2上工作

echo工作在3号文件上

...

我希望他们所有人都在同一条线上.我找到了一个删除新行的黑客(例如:Windows批处理:没有换行的回声),但这会产生一个长行.

谢谢!

windows cmd batch-file

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

回显到文件而不带换行符(批量)

我的生活创造者程序有问题。它只是选择代表某些内容的随机数并将其放在一起。(我尝试过组合变量)这里是代码:

@set num=1
@SET /A a=%RANDOM% * 10 / 32768 + 1
@if %a% == 10 set life%num%= ----
@if %a% == 9 set life%num%=O
@if %a% == 8 set life%num%=^
@if %a% == 7 set life%num%=%
@if %a% == 6 set life%num%=#
@if %a% == 5 set life%num%=@
@if %a% == 4 set life%num%=)
@if %a% == 3 set life%num%=()
@if %a% == 2 set life%num%=~
@if %a% == 1 set life%num%=OO
@echo %a% >"gencode".txt
@set num=2
@SET /A …
Run Code Online (Sandbox Code Playgroud)

batch-file line

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

在set/P提示符中Dos/Windows批处理符号转义

我只是对Windows批处理中的插入符号逃逸的一个特定情况感到好奇:

请将以下代码保存为文件ttt.bat,并ttt.bat在命令提示符下运行,为什么我必须重复5次插入符号(或克拉?)字符^才能使这个"没有新的线路回声"技巧工作?我只想'|'在回显的字符串中放一个管道.

有一些关于Windows批处理转义的文档,但是出于案例研究的目的,你能解释一下这个例子中使用的每个插入字符的含义是什么吗?谢谢!

@echo off

SetLocal EnableDelayedExpansion

set foo=Hello world
set bar=Why why

echo|set /P=!foo! ^^^^^| !bar!

EndLocal
Run Code Online (Sandbox Code Playgroud)

windows escaping character batch-file caret

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