現在、ターミナルのシェルグロビングがネゲートで動作するが、bashで実行しているときにエラーが表示されるのは混乱しています。シェルのグローブネゲートがbashで動作しない
.bundle.js
で終わるjsファイルを除き、./HTML
ディレクトリ内のすべてのjsファイルを表示する以下のコマンドを実行します。
$ shopt -s globstar
$ ls ./HTML/**/!(*.bundle).js
上記のコマンド働く完璧、今のは、端末でそれを実行する
#!/usr/bin/env bash
shopt -s globstar
ls ./HTML/**/!(*.bundle).js
list-js.sh bashのファイルに入れてみましょう:
$ bash list-js.sh
list-js.sh: line 4: syntax error near unexpected token `('
list-js.sh: line 4: `ls ./HTML/**/!(*.bundle).js'
ご覧のとおり、構文エラーが表示されます。
あなたは 'shopt -s globstar'忘れあなたのスクリプトで –
@AndreaCorbellini私はスクリプトを編集し、 'shopt -s globstar'を追加するのを忘れました。私はそれが問題ではないと確信しています。 – ryeballar
次に、別のオプションを有効にする必要があります。おそらくextglob? –