shell-echo {file1,file2} :{ A," B",' C'}的输出结果为什么是这样?

问题描述

echo {file1,file2} :{ A," B",' C'}的输出结果为什么是这样?

echo {file1,file2}:{A,B,C}
结果:file1:A file1:B file1:C file2:A file2:B file2:C

初学Bash。没有看明白这个echo命令的结果为什么是这样的。

请大神们不吝赐教。谢谢。

解决方案

这是一个json片段,输出的时候会得到笛卡尔积。也就是第一个集合每个元素匹配第二个集合的的每个元素。

解决方案二:

谢谢caozhy。我上网搜了一下,上面属于花括号的扩展。最后的结果的确是笛卡尔积。不过如果是echo {file1,file2} {A,B}的话,结果就成了file1 file2 A B

时间: 2024-10-04 06:27:29

shell-echo {file1,file2} :{ A," B",' C'}的输出结果为什么是这样?的相关文章

jsp truts-<div class="error_mes">${message}</div>

问题描述 <div class="error_mes">${message}</div> ${message}什么意思?${message}通常在哪实现? 解决方案 ${message}是java中el表达式 可以获取域中的值 四大作用域 application request session pageContext 建议百度看下el表达式就ok了 解决方案二: jsp中的EL表达式,具体看下这里面.http://blog.csdn.net/chinacshar

safari-MacBook的Safari下type=&amp;amp;quot;submit&amp;amp;quot;点击后显示不出div

问题描述 MacBook的Safari下type="submit"点击后显示不出div 如题,按钮点击的时候在window浏览器这个红色背景的div会一闪而过,但是在macbook的Safari中什么效果都没有,return false的时候div可以显示出来,但表单还怎么提交啊,return true时页面中div已经加载变成block了,感觉是还没来得及被浏览器渲染页面就刷新了一下,有没有什么办法可以让它有一闪而过的效果? html: <div id="divTes

jquery mobile中使用data-role=&amp;amp;quot;dialog&amp;amp;quot;弹出对话框的问题

问题描述 jquery mobile中使用data-role="dialog"弹出对话框的问题 如图,当页面除了一个"page"和"dialog"还有其它的 容器时,对话框后的背景就会显示没有样式的这个容器内容, 这是为什么呢,怎样才能让背景中不显示任何东西 解决方案 试试把背景内容放到另一个page中 你说的data-role =dialog 我没注意到 这个属性... 另外 可以看看 . data-role=popup http://www.

java web-&amp;amp;lt;c:forEach items=&amp;amp;quot;${salesProducts }&amp;amp;quot; var=&amp;amp;quot;pro&amp;amp;quot;&amp;amp;gt;

问题描述 <c:forEach items="${salesProducts }" var="pro"> ${pro.goodsName}特价:¥${pro}/c:forEach pro的bean类属性都设了getter和setter方法,但是${pro.goodsName}没值,${pro}却有值 解决方案 检查一下goodsName属性名称有没写错. 解决方案二: private String goodsName;public String getG

ajax-兄弟伙我的OnSuccess=&amp;amp;quot;afterLogin&amp;amp;quot;咋调用不起

问题描述 兄弟伙我的OnSuccess="afterLogin"咋调用不起 兄弟伙我的OnSuccess="afterLogin"咋调用不起,直接返回return Content类容到页面 @{ Layout = null; } <!DOCTYPE html> 网上超市管理系统 </p> <pre><code> //就是执行controller方法以后执行的方法 function afterLogin(data) {

linux shell-【请教】shell的 `ps -ef | grep $1 | grep -v &amp;amp;quot;grep&amp;amp;quot; | wc -l`返回错误值

问题描述 [请教]shell的 `ps -ef | grep $1 | grep -v "grep" | wc -l`返回错误值 这个程序是参照网上的,主要是为了防止脚本多次启动的,checkprocess 函数的参数就是脚本的名称,然后函数中用 ps 判断脚本启动的个数,我明明只启动一个脚本,但不知道为什么 粗红色部分,总是返回 2, process_num 总是比我启动的脚本进程数多 1 .我的脚本运行环境为 RHEL6.3,请大牛们帮看看,感激不尽. #!/bin/bash ch

shell-这样写有什么意义echo &amp;amp;gt;&amp;amp;amp;2 &amp;amp;quot;songmething&amp;amp;quot;

问题描述 这样写有什么意义echo >&2 "songmething" echo >&2 "songmething" 我知道>&2是定向到错误输出,但是这样写有什么意义?不都是输出到 屏幕吗? 和这样写有啥区别? echo "something" 解决方案 输出到标准输出和标准错误,具体看something的内容,如果something是错误或者一些警告信息那就重定向到标准错误.你用的是一台电脑看不出来区

我java中有一个String a = &amp;amp;quot;123&amp;amp;quot;;我想再我的shell种接收到这个a,请问可以吗?

问题描述 我java中有一个Stringa="123";我想再我的shell种接收到这个a,请问可以吗? 解决方案 解决方案二:你System.out.println(a);这个a不就打印出来了解决方案三:应该可以的解决方案四:shell脚本中么?好像不可以吧解决方案五:System.out.print(a),然后用"|"管道,比如:javaTest|你的程序简单说,就是前面一个java程序的STDOUT就变成了后面一个程序的STDIN解决方案六:当然通过>输

major=$(awk &amp;quot;//$2= =/&amp;quot;$module/&amp;quot; {print //$1}&amp;quot; /proc/devices)正确理解。

Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 major=$(awk "//$2= =/"$module/" {print //$1}" /proc/devices) 正确理解 导语:        这条语句来自O'REILLY <LINUX设备驱动第三版>字符设备章节的自动创建设备文件脚本代码.网上所有的O'REILLY <LINUX设备驱动第三版>的电子书上