2017-11-25 72 views
3
什麼
$ echo [1,2,"abc",4] 

輸出:此構造做Bash中

c 

我遇到了這個試圖此字符串傳遞給我的Node.js程序作爲參數。相反,一些奇怪的Bash魔法發生了。我相信這是解釋「某處」在很長的man bash,但我還找不到任何東西。

+0

bash不會在我的機器上打印'c'。它打印出'[1,2,'abc',4]' –

+0

@TrevorHickey,對不起,請刪除周圍的勾號 – exebook

+0

@TrevorHickey您沒有任何名爲'1',',','2','「的文件當前目錄中的'','a','b','c'或'4' – chepner

回答

7

這只是一個有趣的方式寫的單個字符範圍glob。

[abc]匹配字符a,b或c中的一個。

[1,2,"abc",4]相匹配的人物之一的A,B,C,1,2,4或逗號,相當於[abc124,]

既然你有一個名爲c,它匹配和被打印出來。