1

У меня есть каталог, содержащий файлы, которые принадлежат пользователю root, из этого каталога я хочу скопировать все файлы, заканчивающиеся на errorAll в другой каталог. Мой подстановочный синтаксис правильный, потому что при выполнении ls -latr *errorAll отображаются все файлы, которые я хочу скопировать.

Попытка скопировать (как пользователь без полномочий root) с помощью cp *errorAll ~/Target/ дает ожидаемое предупреждение cp: cannot create regular file /home/tarskin/errorAlls/calibrated_20130903_healthy#1-b_IgA_again_1401_C10.errorAll: Permission denied , я просто добавил этот шаг, чтобы показать, что команда должна работать (по моему мнению).

Однако когда я запускаю его как пользователь корневого уровня, используя sudo cp *errorAll ~/Target/ он не выдает ни сообщения, ни ошибки, а просто заявляет, что это было сделано за считанные секунды, фактически ничего не скопировав.

Кто-нибудь знает, почему это происходит?

РЕДАКТИРОВАТЬ

Была запрошена следующая информация, вывод ls -ld . является drwxr-xr-x 2 root root 3342336 Oct 22 10:09 . Вывод команды ls -ld ~/errorAlls/ - drwxr-xr-x 2 root root 3342336 Oct 22 10:09 . ,

Добавление -v к команде cp для подробного вывода ничего не меняет, команда «завершает», ничего не делая.

1 ответ1

0

Попробуй рекурсивно

sudo cp -r *errorAll ~/Target/

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .