windows C 为什么输出传输时某些“for”命令不起作用?
发布时间:2023-12-19 01:29:55 所属栏目:Windows 来源:DaWei
导读: 作为我所看到的问题的一个例子,命令
for /D %%i in (*) do @if not exist m:home%%i echo %%i
给我一个当前目录中另一个目录中不存在的目录列表.
但是,如果我想将输出传递给另一
for /D %%i in (*) do @if not exist m:home%%i echo %%i
给我一个当前目录中另一个目录中不存在的目录列表.
但是,如果我想将输出传递给另一
作为我所看到的问题的一个例子,命令 for /D %%i in (*) do @if not exist m:home%%i echo %%i 给我一个当前目录中另一个目录中不存在的目录列表. 但是,如果我想将输出传递给另一个命令,例如: (for /D %%i in (*) do @if not exist m:home%%i echo %%i) | findstr /n .我收到此错误消息: echo was unexpected at this time.请注意,我不能将括号括起来,因为这会导致管道操作符在循环的每次迭代中被处理一次;我需要将循环的输出通过管道传递给应用程序的单个实例.例如,如果我在此示例中省略括号,则findstrc中的行号将始终显示为1,而不是计算目录数. 有人知道如何使这项工作,最好是在一般情况下,而不仅仅是这个具体的例子? Windows 7 SP1 x64. 这是具有特殊IF语法形式的解析器的问题,如:IF exist 但是这个没有问题 IF x == y 它可以通过定义包含单个IF的变量来解决. set "_IF_=IF" ( %%_IF_%% defined path echo It's defined ) | more ( %%_IF_%% errorlevel 0 echo Errorlevel is 0 or above ) | more这是有效的,因为%% _ IF _ %%将在子进程解析块之前进行扩展. (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
推荐文章
站长推荐
- Windows Containers 大冒险: 优化计划(Dockerfil
- windows10下安装source insight 4.0
- 批处理文件 C 以编程方式更改和刷新图标(无需重新
- windows-installer – installshield和windowsin
- Windows Server 2016-WinSer 2016标准版与数据中
- windows-phone-7 – Caliburn Micro中的墓碑
- 在windows平台下采用electron-packager打包elect
- 教你win10下安装win7双系统后启动没有引导菜单如
- 在[Windows Subsystem for Linux]中安装perl模块
- windows-phone-7 – 如何将SystemTray Progressb