В этом каталоге, упоминающем ниже, я пытаюсь переместить весь 'example*.file' в 'тестовый' каталог.
Я попытался делать что-то как mv * ./test/
но это только перемещает папки и не только файлы, я посмотрел в mv - справка и не мог найти опцию проигнорировать папки. Я также попробовал CP без-r, но это не работало. и есть ли способ коснуться файлов к нескольким каталогам от корневого каталога, например, в дереве ниже, Вы были бы внутренним тестом, затем затрагивают для создания файлов во всех каталогах в нем, а не просто корневом каталоге, в котором Вы находитесь.
$ tree ./test/
./test/
├── 1
│ └── example.file
├── 10
│ └── example (14th copy).file
├── 11
│ └── example (12th copy).file
├── 12
│ └── example (7th copy).file
├── 13
│ └── example (17th copy).file
├── 14
│ └── example (16th copy).file
├── 15
│ ├── example (14th copy).file
│ └── example (15th copy).file
├── 16
│ ├── example (12th copy).file
│ └── example (13th copy).file
├── 17
│ └── example (11th copy).file
├── 18
│ └── example (10th copy).file
├── 19
│ └── example (9th copy).file
├── 2
│ └── example (3rd copy).file
├── 20
│ └── example (8th copy).file
├── 3
│ └── example (5th copy).file
├── 4
│ └── example (4th copy).file
├── 5
│ └── example (8th copy).file
├── 6
│ └── example (11th copy).file
├── 7
│ └── example (13th copy).file
├── 8
│ └── example (another copy).file
└── 9
└── example (copy).file
20 directories, 22 files
Так как имена файлов уникальны, и так как имена файлов содержат забавные символы ()
, find
и xargs
путь состоит в том, чтобы пойти, и man
страницы для чтения.
find test -type f -print0 |\
echo xargs -0 -r mv --target-directory=test
Удалите echo
когда Вы довольны результатами и хотите на самом деле сделать mv