CMD命令中的参数带有双引号,如何转义双引号?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CMD命令中的参数带有双引号,如何转义双引号?相关的知识,希望对你有一定的参考价值。
cmd /c chcp 437 && winrs -r:128.80.221.84 -u:domain\user -p:123456 -nop hostname
上面的命令中,密码123456如果改成123"456,命令执行就有问题,请问如何转义双引号?
CMD命令中的参数带有双引号,转义双引号的具体步骤如下:
我们需要准备的材料分别是:电脑、
1、首先我们打开电脑,点击打开左下角开始的图标,之后选择打开“运行”。
2、然后我们在弹出来的窗口中点击输入“CMD”,之后回车确定。
3、然后我们在弹出来的窗口中将123"456转化为123"""456即可。
参考技术ACMD命令中的参数用双引号引起来。转义双引号的具体步骤如下:
需要准备的材料是:计算机,
1,首先,打开计算机,单击左下角打开的图标,然后选择“运行”。
2,然后在弹出的窗口中点击输入“ CMD”,然后输入进行确认。
3,然后,在弹出窗口中将123“ 456转换为123”“” 456。
参考技术B cmd中%号和双引号输入不能靠转移字符^,,转义双引号是 三个双引号连在一起
比如:123"456 就是 123"""456 "A""B" 就是 """A""""""B"""
顺便提一下:
%号也差不多 转义就是两个百分比:%%
望采纳 参考技术C cmd转义字符是^ 就是数字键6上面的那个字符。追问
我试过用^转义,\转义都不行,报错:
Active code page: 437
Winrs error: Command is missing
Use "winrs -?" to obtain the usage information
不知道怎么弄了
参考技术D 需要四个引号""""比如 type a.txt|find """"
shell中的单引号和双引号的区别
对于常规的字符串定义变量值应添加双引号,并且等号后不能 有空格,需要强引用的,则需要单引号,需要命令引用的使用反引号。
单引号:所见即所得,即输出时会将单引号内的所有内容都原样输出,或者描述为单引号里面看到的什么就输出什么,这成为强引用。
双引号:输出双引号的所有内容;如果内容中有命令(要反引)、变量、特殊转义,会先把变量、命令、转义字符解析出结果,然后在输出最终内容,这称为弱引。
反引号:一般用于命令,执行的时候命令会被执行,相当于$(),赋值和输出都要用反引号引起来。
[root@localhost ~]# time=date [root@localhost ~]# echo $time date
[root@localhost ~]# time=`date` [root@localhost ~]# echo $time 2019年 08月 01日 星期四 08:14:11 CST
[root@localhost ~]# time="`date`" [root@localhost ~]# echo $time 2019年 08月 01日 星期四 08:21:15 CST [root@localhost ~]# time=‘`date`‘ [root@localhost ~]# echo $time `date`
[root@localhost ~]# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin [root@localhost ~]# echo `$PATH` -bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin: 没有那个文件或目录 [root@localhost ~]# echo "$PATH" /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin [root@localhost ~]# echo ‘$PATH‘ $PATH
[root@localhost ~]# time="现在是北京时间:`date`" [root@localhost ~]# echo $time 现在是北京时间:2019年 08月 01日 星期四 08:24:25 CST [root@localhost ~]# time=‘现在是北京时间:`date`‘ [root@localhost ~]# echo $time 现在是北京时间:`date`
[root@localhost ~]# time="现在是北京时间:\b`date`" [root@localhost ~]# echo $time 现在是北京时间:\b2019年 08月 01日 星期四 08:25:19 CST
[root@localhost ~]# time=‘现在是北京时间:`date`‘ [root@localhost ~]# echo $time 现在是北京时间:`date`
其实在shell中 echo的参数e能够解析转义字符,在单引或者双引的情况下都能够解析。
-e 启用下列反斜杠转义的解释
[root@localhost ~]# time="我们都是\n好孩子" [root@localhost ~]# echo -e $time 我们都是 好孩子 [root@localhost ~]# time=‘我们都是\n好孩子‘ [root@localhost ~]# echo -e $time 我们都是 好孩子
不用“”在shell解释器中能否转义,需要进一步验证,建议代码中使用“”定义转义符。
以上是关于CMD命令中的参数带有双引号,如何转义双引号?的主要内容,如果未能解决你的问题,请参考以下文章