echo特殊字符(Echo特殊含义)
echo $A和"$A"
把命令行中的变量替换后展开看看就知道了。
A是个字符串,而回车符是一个不可见的特殊字符,只有在双引号中才有其本来的含义。
不在双引号中,类似的特殊字符都将被shell解释为空格,制表符
\t
也是一样。
`
`的功能是表示优先执行其中的语句,不会关闭什么功能。
而在单引号中$的变量替换功能被关闭,你试试:echo
'$A'
有些规律不是那么显而易见的,有些东西没有标准答案,需要自己去实践和摸索。希望不是凭借0悬赏而大肆提问。以上也是我自己总结的规律,谈不上标准答案。
注意:低碳,环保,节省公共资源。你可以直接在线hi我,解决不了再提问
;-)
观察了很长时间,今天终于还是决定再回答一次。
下面是我之前回答的链接。如果没理解,请继续追问,我也喜欢探究。但我会寻找一个度,寻求一个平衡。毕竟探究是永无止境的,而时间和精力是有限的。
批处理中,用echo如何输入非常特殊的字符???
自己写了一个
显示字符的
@echo
off
for
/f
"delims="
%%a
in
('findstr
/n
.*
test.txt')
do
(
set
"var=%%a"
setlocal
enabledelayedexpansion
set
var=!var:*:=!
echo.!var!
endlocal
)
pause
把这保存成.bat的批处理文件
在同目录下建立一个test.txt的文本
把你这些乱码复制到test.txt中保存(你这个需要用UNicode编码保存)
然后运行下这个批处理就行了
Linux中echo命令输出特殊字符的问题
一些特殊字符,需要同时:
使用""
加转义
举例来说,如果试图在文件中输入console.log("Hello World");
echo "console.log(\"Hello World\");" test.js
参考链接:
网页链接
请问echo的内容里面有特殊字符时怎么处理?
确实诡异。在使用管道符时,这个转义符居然不起作用了。
那么看来只能曲线救国,使用临时文件来获取内容了。
echo aa^bbtmp.txt
cliptmp.txt
del /f /q tmp.txt
如何使用echo 显示出 & < > ? / ^这样的特殊字符?
那要看你的输出设备了,如果是浏览器输出,那非得用转义不可。
比如空格用 取代。比如版权的代号用?代替(Hooray,我就被取代了……)
别的有Linux shell的命令行标准输出,用"\"即可转义大部分字符。
比如双引号内的双引号。
echo "She said \"OK!\""