• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Linux初心者です。ワイルドカードの使い方について教えてください。)

Linux初心者のためのワイルドカードの使い方と特定ファイルの除外方法

このQ&Aのポイント
  • ディレクトリ内のファイルをmvコマンドを使って移動する方法について質問します。特定の1つまたは2つのファイルを除外する方法を教えてください。
  • 例えば、a1、a2、a3、a4、b1、b2、b3、b4という8個のファイルがある場合、a1とb2以外の6個を移動させたいです。ワイルドカードを使って簡単に選択する方法があれば教えてください。
  • CentOS5.5とtcshシェルを使用しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

tcshですか。bashなら cd 送り元dir ls -1 |grep -v a1|grep -v b2|while read line do mv ${line} 送り先dir done ですかね。但し、*a1*と*b2*も対象外になってしまいますけど。

その他の回答 (2)

  • foobar
  • ベストアンサー率44% (1423/3185)
回答No.3

#1さんの方法で、grep の-wオプションを使うことで a1,b1だけに限定することができそうに思います。 これと、xargsを-iオプション付きで使うと、シンプルにできるかもしれません。 例えば、 ls | grep -v -w a1 | grep -v -w b2 | xargs -i mv {} dist-dir/ みたいな感じでできるかもしれません。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

tcsh にはなさそう. bash かつ extglob が設定されていれば方法はある.

関連するQ&A

専門家に質問してみよう