我用Google搜索,我找不到有关dos中参数的任何有用且清晰的信息(带有“%”的命令)。有人可以解释dos中的参数和参数,以及如何使用%~f1,%~d1,%~f1等命令。
以下是我无法理解的代码示例。
@ECHO OFF
ECHO full path %~f1
ECHO disc %~d1
ECHO extension %~x1
ECHO disc and directory %~dp1
ECHO file name and extension %~nx1
pause
当我打开这个.bat文件时,没有任何内容代替%~f1和所有其他“%”,只是回显文本。
答案 0 :(得分:1)
1
中的%~f1
是在命令行中提供给程序的第一个参数。因此,如果您正在运行批处理文件myBatch
,并向其传递C:\Users\bliny\Desktop\textFile.txt
的第一个参数,则输出将如下所示:
myBatch C:\Users\bliny\Desktop\textFile.txt
full path C:\Users\bliny\Desktop\textFile.txt
disc C:
extension .txt
disc and directory C:\Users\bliny\Desktop
file name and extension textFile.txt
单独运行myBatch
将不会产生任何输出,因为没有提供参数。
批处理参数:
您可以在批处理文件中的任何位置使用批处理参数来提取 有关您的环境设置的信息。 Cmd.exe提供了 批处理参数扩展变量%0到%9。当您使用批处理时 批处理文件中的参数,%0由批处理文件名替换,和 %1到%9将替换为您的相应参数 在命令行输入。
关于修饰符:
您还可以将修饰符与批处理参数一起使用。修饰符使用 当前驱动器和目录信息以扩展批处理参数 作为部分或完整的文件或目录名称。要使用修饰符, 键入百分号(%)后跟一个波浪号(〜)字符,和 然后输入适当的修饰符(即%〜修饰符)。