<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Linux Forum &mdash; Cp: сложное копирование файлов]]></title>
	<link rel="self" href="https://linuxforum.ru/extern.php?action=feed&amp;tid=16336&amp;type=atom" />
	<updated>2011-09-09T02:10:14Z</updated>
	<generator>PunBB</generator>
	<id>https://linuxforum.ru/viewtopic.php?id=16336</id>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=210136#p210136" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>ojO пишет:</cite><blockquote><p>есть ещё задачка по теме:<br />нужно скопировать из поддиректории в заданную все директории, максимальная глубина вложенности которых 2</p></blockquote></div><div class="quotebox"><cite>ojO пишет:</cite><blockquote><p>а условие задачки, все-таки, ещё не выполнено полностью...</p></blockquote></div><p>Так не томите же ж, откройте тайное знание, что ж скрывалось между строк?</p><div class="quotebox"><cite>ojO пишет:</cite><blockquote><p>поэтому я и предложил &#039;-p&#039; #no errors if existing, make parent directory as needed &nbsp; <br />ну соглашайтесь ужжже</p></blockquote></div><p>а изволь-ка мне добыть, то чего не может быть! запиши на всякий случай, чтобы в спешке не забыть... (q)<br />mkdir -p /target/dir/<br />до find .., на случай копирования в только что бывшее никуда, а ныне осязаемое&nbsp; /target/dir/.</p><p>ps. Наверное строитель, по долёвке дома строит... Главное дом скопировать, котлован можно не рыть...</p>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2011-09-09T02:10:14Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=210136#p210136</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=210133#p210133" />
			<content type="html"><![CDATA[<p><strong>bormant</strong>,&nbsp; &nbsp;smile </p><p>конкретно здесь: <br /><span style="color: brown">find . -maxdepth 2 -type d -exec mkdir <strong>-p</strong> /target/dir/&#039;{}&#039; \;</span>&nbsp; <br />скрипт отрабатывает нармулЪ и без &#039;<strong>-p</strong>&#039;, только одно предупреждение от mkdir<br /><em>mkdir: cannot create directory `/target/dir/<strong>.</strong>&#039;: File exists;</em> <br />из-за того, что find передаёт &#039;<strong>.</strong>&#039;, соответственно в случае (без &#039;<strong>-p</strong>&#039;): <br /><span style="color: brown">find . -maxdepth 2 -mindepth 2 -type d -exec mkdir /target/dir/&#039;{}&#039; \;</span> <br />получаем сплошное ругательство<br /><em>mkdir: cannot create directory `/target/dir/<strong>.</strong>/../..&#039;: No such file or directory;</em></p><p>поэтому я и предложил &#039;<strong>-p</strong>&#039; #no errors if existing, make parent directory as needed&nbsp; smile <br />ну соглашайтесь ужжже&nbsp; :rolleyes: </p><p>кстати, <span style="color: brown">find . -maxdepth 2 -mindepth 2 -type d | cipo -pdumv /target/dir/</span> <br />корректно отрабатывает, сохраняя все права и идентификаторы</p><p>а условие задачки, все-таки, ещё не выполнено полностью...&nbsp; &nbsp;:o</p>]]></content>
			<author>
				<name><![CDATA[ojO]]></name>
				<uri>https://linuxforum.ru/profile.php?id=19360</uri>
			</author>
			<updated>2011-09-09T00:40:24Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=210133#p210133</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=210127#p210127" />
			<content type="html"><![CDATA[<p><strong>ojO</strong>, <br />докажете примером необходимость &#039;-p&#039; -- соглашусь.<br />Докажете?</p>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2011-09-08T22:08:44Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=210127#p210127</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=210110#p210110" />
			<content type="html"><![CDATA[<p>небольшое уточнение: для mkdir тут нужен параметр -p #make parentdirectory as needed, т.е.</p><p>find . -maxdepth 2 -type d -exec mkdir -p /target/dir/&#039;{}&#039; \;</p><p>и если нам нужно только те, где два вложения, а не одно или больше двух, то </p><p>find . -maxdepth 2 -mindepth 2 -type d -exec mkdir -p /target/dir/&#039;{}&#039; \;</p><p># ещё бы отсеять не подходящее условию...&nbsp; :rolleyes:</p>]]></content>
			<author>
				<name><![CDATA[ojO]]></name>
				<uri>https://linuxforum.ru/profile.php?id=19360</uri>
			</author>
			<updated>2011-09-08T19:50:49Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=210110#p210110</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209894#p209894" />
			<content type="html"><![CDATA[<p>Не то чтобы скопировать, но структуру каталогов создаст<br />find . -maxdepth 2 -type d -exec mkdir /target/dir/&#039;{}&#039; \;</p>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2011-09-08T02:36:29Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209894#p209894</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209893#p209893" />
			<content type="html"><![CDATA[<p>есть ещё задачка по теме:</p><p>нужно скопировать из поддиректории в заданную все директории, максимальная глубина вложенности которых 2</p><p>наброски..<br />1. find . -type d -print | sort&nbsp; # видно общую картину</p><p># например, такую:<br />./1<br />./1/11<br />./2<br />./2/22<br />./3<br />./3/33<br />./3/33/333<br />./4<br />./4/44<br />./4/44/444<br />./4/44/444/4444</p><p># по идее, нужны только ./1 и ./2 рекурсивно<br /># но когда копирование..</p><p>2. find .&nbsp; -maxdepth 2 -type d -exec cp -pR {} /target/dir \;</p><p># тянутся все директории, т.е. ./1/11 ./2/22 ./3/33/333 ./4/44/444/4444<br /># что и не удивительно, но <strong>как же выбрать нужные, а ещё исключить все файлы на путях, т.е. скопировать только структуру подкаталогов ?</strong></p><p>3. find .&nbsp; -mindepth 2&nbsp; -maxdepth 2 -type d -print | sort</p><p>./1/11<br />./2/22<br />./3/33<br />./4/44</p><p># ...</p><p>кстати, вот <a href="http://www.ibm.com/developerworks/ru/library/au-unix-find/index.html">тут</a> что-то промелькнуло по поводу «Копирование сложного дерева каталогов» (Листинг 5) , но я не врубился почему cpio, да и cpio: cannot open /target/dir: is a directory.</p><p>может кто подскажет простое и красивое решение... ??</p>]]></content>
			<author>
				<name><![CDATA[ojO]]></name>
				<uri>https://linuxforum.ru/profile.php?id=19360</uri>
			</author>
			<updated>2011-09-08T01:44:32Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209893#p209893</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209500#p209500" />
			<content type="html"><![CDATA[<p>Ну, и на случай Zip, ZIP и сотоварищи, предпочтительнее<br />... -iname *.zip ...</p><p>Если не только zip, но все подряд, можно этот предикат совсем убрать...</p>]]></content>
			<author>
				<name><![CDATA[bormant]]></name>
				<uri>https://linuxforum.ru/profile.php?id=732</uri>
			</author>
			<updated>2011-09-06T11:53:36Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209500#p209500</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209497#p209497" />
			<content type="html"><![CDATA[<p>всем участникам - в любом случае <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /></p>]]></content>
			<author>
				<name><![CDATA[teseii]]></name>
				<uri>https://linuxforum.ru/profile.php?id=924</uri>
			</author>
			<updated>2011-09-06T11:28:51Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209497#p209497</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209494#p209494" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teseii пишет:</cite><blockquote><p>всем спасибо, i2ks -  в особенности!</p></blockquote></div><p>ну это ты <strong>bormant</strong>, скажи спасибо, он подсказал =)</p>]]></content>
			<author>
				<name><![CDATA[i2ks]]></name>
				<uri>https://linuxforum.ru/profile.php?id=16</uri>
			</author>
			<updated>2011-09-06T11:25:58Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209494#p209494</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209493#p209493" />
			<content type="html"><![CDATA[<p>урррррррррряяя, заработало! </p><p>find ./ -name *.zip -type f -exec cp -P &quot;{}&quot; ./ &quot;;&quot;</p><p>всем спасибо, i2ks -&nbsp; в особенности! <img src="https://linuxforum.ru/img/smilies/bx.gif" alt="bx" /></p>]]></content>
			<author>
				<name><![CDATA[teseii]]></name>
				<uri>https://linuxforum.ru/profile.php?id=924</uri>
			</author>
			<updated>2011-09-06T11:25:18Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209493#p209493</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209492#p209492" />
			<content type="html"><![CDATA[<p><strong>teseii</strong>, так попробуйте: <a href="http://linuxforum.ru/viewtopic.php?pid=209489#p209489">http://linuxforum.ru/viewtopic.php?pid=209489#p209489</a> =)</p>]]></content>
			<author>
				<name><![CDATA[i2ks]]></name>
				<uri>https://linuxforum.ru/profile.php?id=16</uri>
			</author>
			<updated>2011-09-06T11:22:44Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209492#p209492</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209491#p209491" />
			<content type="html"><![CDATA[<p>Еще раз о задаче: есть over 9000 файлов, рассованых по over 9000 каталогов, уровень вложенности - 5. Нужно скопировать все файлы в одну папку. Можно копировать и в мс, но сломаются пальцы и глаза. Могу написать программу, но зачем изобретать велосипед?</p><p>попробовал по совету bormant объединить find&nbsp; и cp, получился такой монстр: <br />find ./ -name *.zip -type f -print | xargs cp ./<br />на что мне пишет:<br />cp: указанная цель «Мага.fb2.zip» не является каталогом</p>]]></content>
			<author>
				<name><![CDATA[teseii]]></name>
				<uri>https://linuxforum.ru/profile.php?id=924</uri>
			</author>
			<updated>2011-09-06T11:20:41Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209491#p209491</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209489#p209489" />
			<content type="html"><![CDATA[<p>могу и ошибаться, но вот:<br />find /dir1/ -type f -exec cp -P &quot;{}&quot; /dir2/ &quot;;&quot;</p>]]></content>
			<author>
				<name><![CDATA[i2ks]]></name>
				<uri>https://linuxforum.ru/profile.php?id=16</uri>
			</author>
			<updated>2011-09-06T11:17:10Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209489#p209489</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209488#p209488" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>teseii пишет:</cite><blockquote><p>mc поставил, как его использовать для сабжа - не понял.</p></blockquote></div><p>Хм. Странно вообще. Пометь файлы которые нужно скопировать и нажми F5 [Copy]<br />Или я чего-то не понимаю или вы не можете реально описать задачу.<br /></p><div class="quotebox"><cite>teseii пишет:</cite><blockquote><p>а копируется все с папками, как и в исходном каталоге</p></blockquote></div><p>как бы в задаче было:<br /></p><div class="quotebox"><cite>teseii пишет:</cite><blockquote><p>необходимо скопировать все в одну папку, все файлы и каталоги должны быть в корне этой папки.</p></blockquote></div><p>Вроде нужный результат уже был достигнут.&nbsp; oO</p>]]></content>
			<author>
				<name><![CDATA[pb13]]></name>
				<uri>https://linuxforum.ru/profile.php?id=16999</uri>
			</author>
			<updated>2011-09-06T11:13:26Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209488#p209488</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Cp: сложное копирование файлов]]></title>
			<link rel="alternate" href="https://linuxforum.ru/viewtopic.php?pid=209484#p209484" />
			<content type="html"><![CDATA[<p>i2ks, звучит довольно-таки сложно, нельзя ли одной командой сделать? mc поставил, как его использовать для сабжа - не понял.</p>]]></content>
			<author>
				<name><![CDATA[teseii]]></name>
				<uri>https://linuxforum.ru/profile.php?id=924</uri>
			</author>
			<updated>2011-09-06T11:04:18Z</updated>
			<id>https://linuxforum.ru/viewtopic.php?pid=209484#p209484</id>
		</entry>
</feed>
