の機能ではなく、シェルの機能を使用したいと思いますls
。私はbashを使用しているので、あなたが欲しいものをチェックしましたman bash
。「^ EXPANSION」を検索します(最初に「/」を押します)。抜粋:
拡張
展開は、コマンドラインが単語に分割された後に実行されます。実行される展開には、ブレース展開、 チルダ展開、 パラメータおよび変数展開、コマンド置換、算術展開、単語分割、およびパス名展開の 7種類があり ます。
︙
... <snip> ...
︙
パス名展開
しない限り、単語の分割後、-fオプションが設定されている、bashは文字の各単語をスキャンし*
、?
、と[
。これらの文字のいずれかが表示される場合、単語はパターンと見なされ、パターンに一致するファイル名のアルファベット順にソートされたリストに置き換えられます。…
私は最近、最初の文字に基づいて、次のようなコマンドでファイルを除外し始めました:
$ ls ./[^t]*
これは文字で始まらないものにマッチしt
ます。大括弧の間にさらに文字を追加すると、それらの文字で始まるファイルも除外されます。
リンクを探して、私は良いものを持っています!パターンマッチングを参照してください。そこから、これはあなたの場合に機能します:
$ ls -lrt ./!(temp_log.*)
これには、Gillesが述べているようにextglob
、shopt
組み込み(shopt -s extglob
)を使用してシェルオプションを有効にする必要があります。
ls --hide='temp_log.$$'
はずです。用語全体のどの部分であるかに応じて、ワイルドカードを使用してこれを拡張することもできtemp_log.$$
ます。