wildcards в bash

компьютеры Linux unix bash shell

суть проблемы такова:

есть каталог (1) с файлами в текущем каталоге (2).
выше есть 8 каталогов с именами chkme1 chkme2 chkme3 ... , в которые нужно скопировать каталог 1.

в скрипте написано

cp ./input ../chkme*/

вывод:

cp: omitting directory `./input'
cp: omitting directory `../chkme1/'
cp: omitting directory `../chkme2/'
cp: omitting directory `../chkme3/'
cp: omitting directory `../chkme4/'
cp: omitting directory `../chkme5/'
cp: omitting directory `../chkme6/'
cp: omitting directory `../chkme7/'

1. почему не опущена дериктория 8, которая тоже существует
2. почему не произошло копирование
3. ???


Примечание:
я понял почему не работает эта строка, но мне не понятно как добиться требуемого эффекта.

bash делает подстановку до передачи строки в cp.

Примечание:
Юрий Чудновский,

это я понял, потом и в мане посмотрел.

не хотел через цикл делать, но похоже это единственный вариант.

если кому интересно, то сделал так:
for a in {1..8}; do cp ./input/*.txt* ../chkme$a/input; done
Ответы:
Если не полениться и прочитать man cp, то становится ясно, что всё ДО последнего аргумента - то, что нужно скопировать, последний аргумент - куда скопировать, а значит ты всё перепутал.  А omitting  потому, что без -R копируются только файлы. Твоя команда скопировала бы файл ./input в ../chkme8/input, но так как input тоже не файл и опция рекурсивного копирования не была указана, то нечего копировать.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.