web-dev-qa-db-ja.com

lsおよびmvでの正規表現の使用

私はこのようなディレクトリ構造を持っています

├── UK
│   ├── BuyBand_go_UK.png
│   ├── BuyBand_go_UK.svg
│   ├── BuyBand_K.png
│   ├── BuyBand_K.svg
│   ├── BuyBago_UK.png
│   ├── BuyBago_UK.svg
│   ├── BuyBand_ch_Logo_UK.png
│   └── BuyBand_ch_Logo_UK.svg
└── US
    ├── BuyBand_go_US.png
    ├── BuyBand_go_US.svg
    ├── BuyBand_S.png
    ├── BuyBand_S.svg
    ├── BuyBago_UK.png
    ├── BuyBago_UK.svg
    ├── BuyBand_ch_Logo_US.png
    └── BuyBand_ch_Logo_US.svg

1つのコマンドで、親ディレクトリのUKUSの両方のディレクトリにあるすべてのファイルを移動するにはどうすればよいですか?

これは私が試したものです:

   mv (US|UK)/* .
7
Mohsen

親ディレクトリからこれを試してください:

mv {UK,US}/* .

{A,B,...}構文は、正規表現で使用される(A|B|...)構文に似ています。

リストに表示されていないディレクトリにドットファイル(隠しファイル)がある場合は、次を実行します。

mv {UK,US}/{*,.*} .

*グロブは、ドットで始まるものを除くすべてのファイルとディレクトリに展開されます。 .*グロブは、すべてのドットファイルに展開されます。

11
user26112