java - 我可以在 windows run.bat 文件中屏蔽/加密输入文本(例如密码)吗?
问题描述
用例: 我想在 run.bat 文件中屏蔽输入文本(主要是密码),我使用 java 作为编程语言,总的来说,我的主要目标是每当用户在 run.batch 中提供密码输入时,它应该被加密,是否可能这样做?这是我的 run.batch 文件:
@echo OFF
setlocal DISABLEDELAYEDEXPANSION
java -jar "stack.jar" -username "stackoverflow" -password "qwerty@567" -configpath "config.ini"
pause
在这里我想屏蔽 qwerty@567 这是用户端给出的密码 这是我尝试过的东西,但它仅适用于控制台
import java.io.Console;
public class Main {
public static void main(String[] args) {
Console console = System.console();
char[] passwordArray = console.readPassword("Enter your password: ");
console.printf("Password is: %s%n", new String(passwordArray));
}
}
解决方案
在 Windows 10 中,如果您将输入直接作为批量变量,使用 Set /P,您可以使用 ANSI 颜色代码将输入的颜色代码更改为黑底黑字<esc>[30m
(<esc>
替换为 Ansi 转义字符)
输入后使用<esc>[0m
重置颜色。
推荐阅读
- c - 从 txt 文件(csv)填充二维数组的问题
- c++ - 如何将用户的数据输入二维数组并输出到用户c++
- postgresql - postgresql中STRPOS和POSITION的区别
- protocol-buffers - Protobuf 映射消息选项
- java - 返回数字的二进制表示中最右边的 1
- assembly - MIPS 程序的“主”标签未被识别
- javascript - how to hide span class but keep it's space
- npm - npm 从未指定的注册表下载附加文件
- python - 使用 beautifulsoup 从下拉菜单中抓取
- javascript - 为什么设置 this.setState 后 App.js 中的状态没有更新?