Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 创建随机数并将其用作代码_Batch File_Random - Fatal编程技术网

Batch file 创建随机数并将其用作代码

Batch file 创建随机数并将其用作代码,batch-file,random,Batch File,Random,我想把它用作代码生成器。生成的代码需要在cmd中使用才能继续处理。根据您原始的未编辑请求,我制作了一个脚本,完全按照您的请求执行。您首先需要读取文本文件中的数据,以检查其上是否已包含代码。这可以通过以下方法完成:首先使用set/p mytextfile=>notepad.txt将其设置为一个可以调用并提取到文本文件的字符串,而不是将%random%放在echo中 要将密码调用到变量中,我们可以使用set/p password=notepad.txt) set/p mytextfile=>note

我想把它用作代码生成器。生成的代码需要在cmd中使用才能继续处理。

根据您原始的未编辑请求,我制作了一个脚本,完全按照您的请求执行。您首先需要读取文本文件中的数据,以检查其上是否已包含代码。这可以通过以下方法完成:首先使用
set/p mytextfile=<%~dp0notepad.txt
读取文件,然后使用
如果“%mytextfile%”==“
检查其是否为空

我们可以使用
echo%number%>>notepad.txt
将其设置为一个可以调用并提取到文本文件的字符串,而不是将
%random%
放在echo中

要将密码调用到变量中,我们可以使用
set/p password=<%~dp0notepad.txt
。这将读取文本文档并将
%password%
设置为字符串。然后使用另一个
IF
语句,我们可以比较结果并让它检查您的密码是否正确

请记住,
%~dp0
只是批处理位置的路径。根据需要更改路径

echo You found secret option! Your code is %random%. >> notepad.txt
@ECHO关闭
如果不存在%%dp0notepad.txt(类型nul>notepad.txt)
set/p mytextfile=<%~dp0notepad.txt
如果“%mytextfile%”==“”(转到空)或其他(转到存在)
:空的
回音文件是空的!生成代码!
设置数量=%random%
echo%number%>>notepad.txt
回声你找到了秘密选项!您的代码是%number%。
暂停
转世
:存在
cls
set/p password=<%~dp0notepad.txt
set/p trunt=输入代码以继续:
如果“%password%”==“%trunt%”(转到未锁定)其他(转到存在)
:解锁
cls
回声做东西
暂停

这一点非常不清楚。你的“这个代码有什么问题”?它正在创建一个txt文件。有生成的代码。我想使用cmd中生成的txt文件中的代码继续执行下一个命令。如果用户写入错误代码,cmd将关闭。我的问题是从txt文件中读取生成的代码并将其保存到CMD中使用。您需要显示您编写的代码,并说明该代码的问题所在。如果您还没有编写任何相关的代码,并且对希望代码做什么有点模糊的想法,那么这个问题太广泛了。这就是我的全部代码。我只是想知道什么命令可以从记事本中读取特定的文本并使用它,为什么要将其写入一个文件,然后将其读回使用它?如果要在另一个批处理文件中使用此代码,则只需将其分配给一个变量即可。谢谢。我会记住这一点,并且代码工作得非常出色。注意:
echo%number%>>notepad.txt
会在文件中写入一个尾随空格(稍后
set/p
也会读取该空格。如果“%password%”==“trust%”,则使用
进行处理(
此处,但更好的方法是不首先写入空格。使用替代语法
>file.txt echo%number%
(echo%number%)>file.txt
@ECHO OFF

IF NOT EXIST %~dp0notepad.txt (type nul >notepad.txt)

set /p mytextfile=< %~dp0notepad.txt 
IF "%mytextfile%"=="" (Goto empty) else (goto exist)

:empty
echo File is empty! Generating code!
set number=%random%
echo %number% >> notepad.txt
echo You found secret option! Your code is %number%.
pause
goto exist

:exist
cls
set /p password=< %~dp0notepad.txt
set /p attempt=Enter your code to continue: 
IF "%password%"=="%attempt% " (goto unlocked) else (goto exist)

:unlocked
cls
echo do stuff
pause