标题: [文件操作] 【已结】<"%~f0" more 6 >tmp.vbs是什么意思? [打印本页]
作者: lzwudi 时间: 2008-10-11 18:48 标题: 【已结】<"%~f0" more 6 >tmp.vbs是什么意思?
复制代码
[ 本帖最后由 lzwudi 于 2008-10-11 20:45 编辑 ]
作者: pusofalse 时间: 2008-10-11 21:02
%~0 代表批处理自身(不含首尾的引号),%~f0 包含自身所在的完整路径。
more +6 就是跳过自身内容中的前六行,把剩下的内容输出到tmp.vbs中。
more +6 <"%~f0" 与<"%~f0" more +6、more +6 "%~f0" 完全是等效的。
<或>在一条命令中的位置没有严格的规定。
>输出重定向,把命令的结果输出到tmp.vbs,并覆盖tmp.vbs中原有的内容。
>> 则代表追加,不覆盖原有内容。
关于more与%0的更多信息参照more /?&call /?
作者: wxcute 时间: 2008-10-11 21:11 标题: 试一下,这样就更明白了。
- @echo off
- <"%~f0" more +6>tmp.txt
- type tmp.txt
- pause>nul
- goto :eof
- 第六行
- 第七行
- 怎么样?
- 明白了吗?
复制代码
作者: lzwudi 时间: 2008-10-11 23:43
终于明白了,谢谢各位!!
也就是说下面的不加~f也行吧?- @echo off
- more +6 %0>tmp.txt
- ::本行不输出
- ::本行不输出
- ::本行不输出
- ::本行不输出
- ::本行输出
复制代码
[ 本帖最后由 lzwudi 于 2008-10-11 23:50 编辑 ]
作者: pusofalse 时间: 2008-10-11 23:58
"%~f0"是一种保险的做法。因为%0在某些情况下不包含自身的路径,仅是自身文件名或文件名+扩展名。
作者: lzwudi 时间: 2008-10-15 14:16
恩,谢谢版主您的提醒!!
作者: steven007 时间: 2009-1-12 14:43
学习学习,偶也有收获咯
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |