私が入力した場合rm main!(.tex|.pdf)
、bashの端子に、それはで始まるすべてのファイルが削除されますmain
が、で終わっていない.tex
か、.pdf
LaTeXのタイプセッターによって周りに散らばっている様々なジャンクファイルをクリアし、。
ただし、次のシェルスクリプトは、ファイルに配置して実行すると、期待どおりの動作をしません。
#!/bin/bash
rm main!(.tex|.pdf)
(
トークンで構文エラーが報告されます。何が得られますか?bashスクリプトの一部としてこのようなことを行う標準的な方法は何ですか。find
問題に耐えるために持ち込むよりも、これを行うためのよりエレガントな方法はありますか?
スクリプトから実行したときにパターンが機能しない場合は、extglob
オプションが非対話型で使用するように設定されていることも確認してください。
置くだけ
#!/usr/bin/env bash
shopt -s extglob
ハッシュバンの後のスクリプトの上に。そうすれば、簡単に見つけることができます。参照:Glob –GregのWiki
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加