首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

双引号与括号

给变量赋值时,也可以通过括号使特殊字符被当作普通字符处理。如下图所示。在这个例子中,括号阻止了$置换。如果将括号替换为双引号则会报错。 ? 如果在一个脚本中同时使用双引号和括号会是什么结果呢?...给变量b赋值时使用了反斜杠置换,给变量c赋值时使用了双引号加括号,其中双引号在最外层,给变量d赋值时使用了括号加双引号,其中括号在最外层,对比下来可以得出这样的结论:在同时使用双引号和括号时,最外层的做主...对于括号,如前文所述“括号内的置换有可能会被阻止”,这是因为括号的功能稍微复杂一些,但总的来说遵循两个原则:第一个原则是如果括号是用做置换操作,则其内部的置换操作会被阻止;第二个原则是如果括号用做界限符...如果需要双引号或括号作为普通字符出现在字符串中时,可通过反斜杠\置换,或者通过双引号和括号的嵌套使用实现特定功能,如下图所示。 ?...结论: -双引号实现参数分组,不阻止置换; -括号实现参数分组,阻止内部置换; -同时使用双引号和括号实现参数分组时,是否置换由最外层符号决定

2.2K10
您找到你想要的搜索结果了吗?
是的
没有找到

使用双括号初始化集合,可别这么干

Double Brace Initialization should not be used 前言 最近在修改sonar问题时,发现有人使用双括号初始化集合,提示可能发生内存泄漏。...(1000); } } 输出 访问外部类对象的属性:bob Thread name: Finalizer Object: sandy Gc happen 分析 匿名内部类持有外部类对象引用 双括号初始化时...使用了匿名内部类 双括号初始化的方法 非双括号初始化的方法 编译后产生的文件 可以发现,多了一个内部类:A$1.class。...查看内部类字节码 拥有一个外部类的成员变量 通过构造方法传入了外部类对象的引用 将外部类对象的引用赋值给成员变量 执行我们写的put方法 内部类继承于HashMap 发生了内存泄漏 使用非双括号初始化...map的sandy被回收了,而使用双括号初始化map的bob却没有被回收。

79030

编程语言简史:有人不喜欢括号,于是他发明了 Python

这在后来被证明是正确的——在Electron.js被发明出来后 1972年 Dennis Ritchie在贝尔实验室上班上到无聊了,于是他决定写出带有括号的C语言,这门语言取得了巨大成功。...1983年 Bjarne Stroustrup 注意到C在编译方面的时间还不够多,于是他把自己能想到的每一项功能都增加了进去,然后称之为C++。...1991年 Guido van Rossum不喜欢括号,于是他发明了Python,语法选择的灵感来源自Monty Python(巨蟒剧团)和Flying Circus(飞行马戏团)。...他先是找到了Netscape然后说这门语言叫做LiveScript,但在代码评审期间Java变得流行起来,所以他们决定最好还是用括号,然后就把它更名为JavaScript。

1.2K70

shell中的括号(小括号,中括号,大括号

一、小括号,园括号()   1、单小括号 ()     ①命令组。括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用。...括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和括号之间不必有空格。     ②命令替换。...,方括号[]   1、单中括号 []     ①bash 的内部命令,[和test是等同的。...④bash把双中括号中的表达式看作一个单独的元素,并返回一个退出状态码。 三)大括号括号 {}   1、常规用法。     ①大括号拓展。(通配(globbing))将对大括号中的文件名做扩展。...与小括号中的命令不同,大括号内的命令不会新开一个子shell运行,即脚本余下部分仍可使用括号内变量。括号内的命令间用分号隔开,最后一个也必须有分号。

3.8K10

2023-07-13:如果你熟悉 Shell 编程,那么一定了解过括号展开,它可以用来生成任意字符串。 括号展开的表达式可以

2023-07-13:如果你熟悉 Shell 编程,那么一定了解过括号展开,它可以用来生成任意字符串。...括号展开的表达式可以看作一个由 括号、逗号 和 小写英文字母 组成的字符串 定义下面几条语法规则: 如果只给出单一的元素 x,那么表达式表示的字符串就只有 "x"。...该代码的时间复杂度为O(N^M),其中N为表达式中的字符数,M为展开括号的深度。...具体来说,代码中的核心函数process通过遍历表达式字符并进行递归处理,每次递归都会将问题规模缩小,直到达到展开括号的最深层级。因此,时间复杂度取决于表达式中字符的数量以及展开括号的深度。...因此,最终的空间复杂度取决于展开括号的深度和表达式中字符的数量,即O(N^M)。

21930

黑客无涯:Linux 入侵常用命令

rankup_log]$ echo -e "" >rankuplog_time.php [jobcruit@wa64-054 rankup_log]$ cat rankuplog_time.php 1、linux...—— 《网络黑白》 作者 无涯 有人的当地就有江湖,有江湖的当地就有故事。每个男人心中都有一个武侠梦:都愿望着具有一把利剑宝刀,驰骋纵横,爽快江湖。愿望着有一个神仙眷侣,携手仗剑,联袂行侠。...当今,我国黑客教父无涯从前未竟的武侠梦,通过网络得到了接续。...3、利用跨站代码 linux不提权跨目录访问的代码 linux权限多设的比较松的其实,但有的虚拟机还是不能跨目录访问的。 在提不了权的情况下,试试如下代码吧。运气好的话说不定就跨过去了。...(useradd -u 0 -o "username") 依次输入命令 cd /tmp sh-3.1# ls /lib/ld-linux* /lib/ld-linux.so.2 sh-3.1# cp /

1.8K60
领券