
這似乎是一件非常簡單的事。我已經在 Bash 腳本中完成了此操作,但我想知道如何在終端機中執行相同的操作。
例如,假設我想要ls
所有不是js
.也許我會這樣做:
ls ! *.js
但我的操作員卻收到錯誤訊息!
。
如何使用not ( ) 運算子執行mv
、和任何其他操作?rm
!
請注意,我的 shell 是 Bash。
答案1
在bash
shell 中,您應該啟用extglob
並運行ls !(*.js)
.
例子:
$ touch file.js file.txt
$ shopt -s extglob
$ ls !(*.js)
file.txt