在典型的Linux shell中,可以使用Ctrl+c
停止執行命令。如果您已經開始使用通配符(例如*)來查找具有特定模式的所有文件的運行,並且如果您有許多文件需要搜索,則shell可能需要相當長的時間才能將通配符展開爲實際的文件名稱。同時Ctrl + c不會停止shell。殼牌繼續解決通配符問題。只有在shell解析通配符後,Ctrl + c纔會生效,並且可以花費相當多的時間。在解析(即擴展)通配符時停止Linux shell
有沒有辦法在試圖擴展通配符時停止shell?
這在GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu)
上測試。
你總是可以背景它,然後殺死這個過程... – Nate
這是一個錯誤報告給這個shell的維護者。它*應該*字段'SIGINT'(或者檢測控制-C,如果它將終端置於原始模式)並中止通配符擴展。 – zwol
我不能在Bash 4.2.24(1)中重現這一點。 Ctrl-c迅速殺死'echo **/*',因爲它正在破壞磁盤。 –