DOS批处理中%cd%和%~dp0的区别
在DOS的批处理中,有时候需要知道当前的路径。
在DOS中,有两个环境变量可以跟当前路径有关,一个是%cd%, 一个是%~dp0。
这两个变量的用法和代表的内容是不同的。
1. %cd% 可以用在批处理文件中,也可以用在命令行中;
展开后,是驱动器盘符:+当前目录,如在dos窗口中进入c:\dir目录下面, www.2cto.com
输入:echo %cd% ,则显示为:c:\dir 。
%cd%的内容是可以被改变的,其内容为命令的执行路径或批处理文件的执行路径。
2.%~dp0只可以用在批处理文件中,它是由它所在的批处理文件的目录位置决定的,
是批处理文件所在的盘符:+路径。在执行这个批处理文件的过程中,
它展开后的内容是不可以改变的。比如在D盘下有个批处理文件,path.bat,其内容为:
[plain]
@echo off
echo this is %%cd%% %cd%
echo this is %%~dp0 %~dp0
在C:\ 和E:\分别下执行它,输出为:
作者 yxyy3604
相关推荐
总结起来,%cd%是DOS和批处理文件中不可或缺的一部分,它提供了一种便捷的方式来引用当前工作目录。无论是简单的打印目录路径,还是在文件操作中动态获取当前目录,%cd%都能发挥重要作用。了解并熟练使用%cd%,将使...
- **获取路径脚本**:可能涉及到`CD`命令改变目录,或者使用`%~dp0`获取批处理文件当前所在的完整路径。 - **精确延时脚本**:利用`TIMEOUT`命令实现延迟,可以精确控制脚本执行间的间隔。 - **数值计算脚本**:...
2. `cd /d %~dp0`:切换到批处理文件所在的目录,`%~dp0`代表批处理文件的完整路径。 3. `del /s /f /q .metadata*`:删除当前目录及其所有子目录下的`.metadata`开头的文件和文件夹,`/s`表示递归,`/f`强制删除,`...
本文将深入探讨DOS批处理命令及其应用。 1. **批处理文件创建** 创建批处理文件通常使用记事本等文本编辑器,以`.bat`为扩展名保存。例如,创建一个名为`mybatch.bat`的文件,内容可以是`echo Hello, World!`,...
3. **批处理变量**:如 `%~dp0` 可以获取批处理文件所在的完整路径, `%DATE%` 和 `%TIME%` 获取系统当前日期和时间, `%ERRORLEVEL%` 查看上一个命令的返回状态。 4. **批处理流程控制**:掌握`GOTO`标签跳转,`...
简明批处理教程22009年10月20日 星期二 下午 05:35 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古...
总的来说,通过“pushd”和“%~dp0”变量可以解决DOS批处理不支持将UNC路径作为当前目录的问题。但是在使用这些方法时,需要考虑到网络共享的权限设置,并且在必要时可以考虑修改注册表,但这应作为最后的手段,因为...
cd "%~dp0" %~d0% @REM 分别测试 @REM "@dimen/mm_30f" 负数 @REM "@dimen/mm_30" 正数 @REM @dimen/mm_30 其他 set line_str1=android:paddingLeft="@dimen/mm_30f" set token_start1=mm_ set token_len1=3 call...
- `cd /d "%~dp0"` 命令用于切换到批处理文件所在的目录。`%~dp0` 是批处理文件的完整路径,`/d` 参数确保即使在不同驱动器之间切换也能正确改变目录。 - `cmd` 是启动命令提示符的命令,这样就会打开一个新的命令...
在Windows系统中,批处理文件通常用于自动化脚本编写,实现系统的管理和维护工作。 #### 三、注册DLL文件的基本原理 注册DLL文件意味着将其加入到Windows注册表中,使操作系统能够识别并使用这些DLL文件。注册过程...
批处理程序,也称为批处理脚本或批处理文件,是一种在DOS和Windows操作系统中广泛使用的命令行脚本语言。这些文件通常扩展名为`.bat`,用于自动化一系列的命令行操作,简化日常任务,提高工作效率。下面我们将深入...
3. **变量与操作符**:在批处理脚本中,可以使用环境变量(如%USERPROFILE%代表当前用户的主目录)和特殊符号(如%~dp0获取批处理脚本所在路径)。运算符如`&&`和`||`分别表示命令间的逻辑与和逻辑或,用于控制命令...
- **路径变量**: `%CD%`获取当前目录,`%~dp0`获取批处理脚本所在目录。 4. **批处理中的条件语句和循环**:为了实现更复杂的逻辑,批处理脚本支持条件判断(`if`)和循环(`for`): - **条件语句**:`if exist ...
cd /d "%~dp0" ``` 只需将上述代码放置在bat文件的开头,即可实现在运行时提示用户以管理员身份执行。 #### 方法三:bat脚本中以管理员权限执行命令 如果希望bat脚本中的某个命令以管理员权限执行,可以在命令前...
- **路径处理**:使用`cd`改变当前目录,`%~dp0`获取批处理文件的完整路径。 通过以上介绍,我们可以创建一个批处理脚本来批量处理多个PDF文件,例如合并、转换或重命名。熟练掌握批处理脚本能极大地提高工作效率...
5. **DOS命令的路径处理**:使用`%~dp0`获取批处理文件的完整路径,`%~n1`获取第一个参数的文件名,`%~x1`获取第一个参数的扩展名。 6. **管道与重定向**:`|`用于将一个命令的输出作为另一个命令的输入,`>`和`...
2. **批处理文件**:创建一个批处理文件(`.bat`文件),内容为`@echo off && cd /d "%~dp0"`,双击这个文件就能打开CMD并定位到批处理文件所在目录。 3. **修改注册表**:高级用户可以通过修改注册表项`Computer\...
`cd /d %~dp0`则是用来切换到批处理文件所在的目录,确保后续的命令在这个目录下执行;`make clean`用于清理上一次的编译产物,避免旧文件影响新编译的结果;`make all`则会根据Makefile编译所有的目标。 在多工程...
- `cd /d %~dp0`:改变当前目录到批处理文件所在目录。 - `start /wait .\sogou_pinyin_50a.exe /S`:启动安装程序并等待其完成。`/S`表示静默模式安装。 4. **执行批处理文件**:双击`sogou_install.bat`文件,...
5. **文件路径**:批处理脚本可能需要指定文件所在的目录,如`%cd%`表示当前目录,`%~dp0`表示批处理文件所在目录。 6. **错误处理**:高级的批处理脚本还会包含错误处理代码,确保在文件不存在或重命名失败时能够...