您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么解決zsh使用scp命令時(shí)*通配符出現(xiàn)no matches的錯(cuò)誤”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么解決zsh使用scp命令時(shí)*通配符出現(xiàn)no matches的錯(cuò)誤”吧!
MacOS升級(jí)后zsh成了默認(rèn)的shell,順應(yīng)潮流開始了zsh的使用之旅。
今天使用scp
復(fù)制遠(yuǎn)程多個(gè)文件時(shí)出現(xiàn)如下錯(cuò)誤:
# 復(fù)制某個(gè)目錄下的所有配置文件(*.conf) scp host:/xxxx/*.conf . # 錯(cuò)誤如下錯(cuò)誤 # zsh: no matches found: host:/xxxx/*.conf
很肯定這條命令語句在bash中能正常如期工作,出現(xiàn)這樣的問題應(yīng)該是zsh的鍋。作為資深linux用戶,可以很快看出了問題所在:zsh試圖將*通配符展開,在本地未找到對(duì)應(yīng)文件,于是出現(xiàn)“no matches”的錯(cuò)誤。
經(jīng)過個(gè)人嘗試以及網(wǎng)上搜索,有兩種解決方案:
不要讓zsh將*號(hào)展開;具體做法有:
將*號(hào)部分用引號(hào)引起來,單雙引號(hào)都所無謂。例如:scp "host:/xxxx/*.conf" .
,或者scp 'host:/xxxx/*.conf' .
。也可以只引用路徑部分,例如:scp host:'/xxxx/*.conf' .
;
用反斜桿阻止zsh轉(zhuǎn)義:scp host:/xxxx/\*.conf .
。
設(shè)置nonomatch選項(xiàng),讓zsh匹配失敗時(shí)不報(bào)錯(cuò)并使用原本內(nèi)容。具體做法是:setopt nonomatch
,然后再使用scp
命令。推薦的做法是寫入到.zshrc文件中,讓以后的使用中自動(dòng)生效。
zsh使用scp命令時(shí)*通配符無法使用
感謝各位的閱讀,以上就是“怎么解決zsh使用scp命令時(shí)*通配符出現(xiàn)no matches的錯(cuò)誤”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)怎么解決zsh使用scp命令時(shí)*通配符出現(xiàn)no matches的錯(cuò)誤這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。