Что делает & ldquo; cp: опуская каталог & rdquo; имею в виду?

Хотя возможно использование Turbo C ++ в Linux, я думаю, что вам лучше всего использовать встроенные средства linux. В Linux наиболее распространенным компилятором C / C ++ является gcc / g++. Базовая установка разработки может быть достигнута при установке пакета build-essential.

Если вам нужна IDE для написания ваших программ на C / C ++, у вас есть много вариантов:

Eclipse C / C ++ Dev. инструменты Anjuta IDE Code :: Blocks ...

Как я уже сказал, если вам действительно не нужно использовать Turbo C ++, попробуйте эти инструменты. У вас будет гораздо более современная система разработки с большим количеством функций.

1
задан 5 September 2016 в 13:42

5 ответов

Сообщение означает, что cp не скопировал перечисленные каталоги. Это поведение по умолчанию для cp - только файлы копируются обычно, независимо от того, задаете ли вы их явно или используете *. Если вы хотите скопировать каталоги, используйте переключатель -r, что означает «рекурсивный».

33
ответ дан 25 May 2018 в 22:02

Пара вещей, которые необходимо проверить:

Не используйте sudo. Вам это не нужно, у вас уже есть права на запись материала в свой собственный домашний каталог. Вы можете легко просмотреть скрытые файлы и каталоги в графическом диспетчере файлов, выбрав «Показать / показать скрытые файлы» в меню. Или нажав Ctrl - H. Вам нужно использовать опцию -R в команде cp для копирования каталога и его содержимого. / home не является вашим домашним каталогом. / home / username есть. Поэтому вы, вероятно, пытаетесь скопировать из-за неправильного места. Оболочка чувствительна к регистру, поэтому ~ / downloads и ~ / Downloads - это две разные вещи.
13
ответ дан 25 May 2018 в 22:02

Когда вы копируете каталог, такой как:

cp dir1 copy_of_dir1

Вы только и точно копируете сам dir1, а не файлы внутри него, поэтому в конце вы получите новая структура каталогов, в то время как структура не существует.

Другими словами, после того, как он был скопирован, он скажет, что мое содержимое file1, file2 и т. д .; Однако эти файлы не были скопированы и, следовательно, не существуют в нем.

Поэтому, чтобы исправить эту проблему, которая может возникнуть cp по умолчанию, не копирует каталоги и не пропускает их, если вы не укажете -r который копирует все файлы рекурсивно.

1
ответ дан 25 May 2018 в 22:02

Причина, по которой он говорит omitting directory, заключается в том, что cp и все утилиты копирования, о которых я знаю, создают список файлов и подкаталогов, которые нужно скопировать, прежде чем приступать к копированию файлов. Когда опции --recursive отсутствуют, подкаталоги выходят из этого списка. Таким образом, опускание относится к удалению из списка копий, а не к исходному медиа. Я считаю, что это относится к значению сообщения.

0
ответ дан 25 May 2018 в 22:02

Предположим, у вас есть два каталога «Tag» & amp; 'Test'

Если вы хотите скопировать каталог «Tag» в каталог «Test», используйте команду

$ : cp -r Tag Test (case sensitive)

. В основном проблема будет решена с помощью вышеуказанного кода, если нет, и вы получите ниже сообщение, подобное

cp: omitting directory `Tag' 
cp: omitting directory `Test'

, затем добавьте некоторые файлы в каталог «Tag», а затем скопируйте их в «Test». На самом деле у меня есть одна и та же проблема, но она решена так, как я сказал во-вторых.

-2
ответ дан 25 May 2018 в 22:02

Другие вопросы по тегам:

Похожие вопросы: