关于在DOS中执行带管道符命令行的问题

时间:2022-09-02 22:35:08
目前有一个棘手的问题,需要在DOS下正常执行一条命令。
例如:> asd "error abs|v01"

这条命令的目的是执行asd命令(触发新建一个工单)同时将"error abs|v01"的信息带入到新建的工单中。
信息中“abs|v01”这部分信息是直接从网络设备上取到的无法修改。

目前的问题是命令行中有管道符“|”,DOS会将abs作为命令执行、报错。

看看各位有没有办法可以让这条DOS命令正常执行。

10 个解决方案

#1


在线等!!

#2


你的asd是什么?
一般来说,加上双引号就不会出错了。

C:\Test>echo "error abs|v01"
"error abs|v01"

#3


"目前的问题是命令行中有管道符“|”,DOS会将abs作为命令执行、报错。"

姑且不论楼主这些是什么鸟东西,

> asd "error abs|v01"  -> 后面既是"",直接改: > asd "error abs^|v01"

#4


楼主说abs|v01不能改^_^

#5


asd 是随便举的一个例子。

#6


再说明一下
c:\asd.exe -f add_daily_check_task.asd "gencr("""Seria10  | WAN 1544 DOWN""")"
'WAN' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

#7


引用 5 楼 enterala 的回复:
asd 是随便举的一个例子。


能否不随便举例子,给个真实的命令如何?

#8


不是系统命令,实际情况是调用在系统中的一个命令。
类似 
C:\test\notification\util>c:\test\bin\notification.exe -f c:\test\notification\util\add_daily_check
_task.frg "gencr("""Seria10  | WAN 1544 DOWN""", """""", """""", """""", """草案
""","""""", """""", """""","""""", """""", """""")"

#9


ding

#10


在线等.

#1


在线等!!

#2


你的asd是什么?
一般来说,加上双引号就不会出错了。

C:\Test>echo "error abs|v01"
"error abs|v01"

#3


"目前的问题是命令行中有管道符“|”,DOS会将abs作为命令执行、报错。"

姑且不论楼主这些是什么鸟东西,

> asd "error abs|v01"  -> 后面既是"",直接改: > asd "error abs^|v01"

#4


楼主说abs|v01不能改^_^

#5


asd 是随便举的一个例子。

#6


再说明一下
c:\asd.exe -f add_daily_check_task.asd "gencr("""Seria10  | WAN 1544 DOWN""")"
'WAN' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

#7


引用 5 楼 enterala 的回复:
asd 是随便举的一个例子。


能否不随便举例子,给个真实的命令如何?

#8


不是系统命令,实际情况是调用在系统中的一个命令。
类似 
C:\test\notification\util>c:\test\bin\notification.exe -f c:\test\notification\util\add_daily_check
_task.frg "gencr("""Seria10  | WAN 1544 DOWN""", """""", """""", """""", """草案
""","""""", """""", """""","""""", """""", """""")"

#9


ding

#10


在线等.