<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=10714&amp;type=atom" />
	<updated>2015-06-22T23:36:38Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=10714</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=94701#p94701" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Yury пишет:</cite><blockquote><p>Не-а. Вот так: <br /></p><div class="codebox"><pre><code>for %%I in (&quot;%~dp0.&quot;) do set &quot;DirName=%%~nxI&quot;</code></pre></div></blockquote></div><p>А ещё вот так<br /></p><div class="codebox"><pre><code>for %%I in (&quot;%~f0\..&quot;) do set &quot;DirName=%%~nxI&quot;</code></pre></div><p>или<br /></p><div class="codebox"><pre><code>for %%I in (%0\..) do set &quot;DirName=%%~nxI&quot;</code></pre></div><p>— второй способ будет работать независимо от того, указано ли при запуске расширение имени командного файла, но если указан относительный путь, то пока не произошла смена рабочего каталога.</p><p>Но это о каталоге, содержащем командный файл, в названии же — текщий каталог (т.е. доступный через псевдопеременную %CD%). Первый легко делается вторым, что и показано выше<br /></p><div class="quotebox"><cite>texnar пишет:</cite><blockquote><div class="codebox"><pre><code>pushd &quot;%~dp0&quot;</code></pre></div></blockquote></div><p>но опять же:<br /></p><div class="codebox"><pre><code>pushd %0\..</code></pre></div><p>(в таком виде команда станет работать и при отключенных расширениях командного процессора).</p><p>Теперь, если нужно получить файл с именем, совпадающем с именем текущего каталога, расширением «.7z» и находящийся в текущем каталоге, можно воспользоваться выражением<br /></p><div class="codebox"><pre><code>.\%CD:\=\..\%.7z</code></pre></div><p>или, если, например, файл должен находиться в корневом каталоге диска D:<br /></p><div class="codebox"><pre><code>D:\%CD:\=\..\%.7z</code></pre></div><p>— в пути текущего каталога заменяем все разделители «\» на «\..\», что подавляет все составляющие пути кроме последнего. Большинство программ, если не все, проглотят получившийся путь.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2015-06-22T23:36:38Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=94701#p94701</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=94686#p94686" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Yury пишет:</cite><blockquote><p>Не-а. Вот так:</p></blockquote></div><p>Точно, забыл про &quot;\&quot; в конце.</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2015-06-21T21:31:43Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=94686#p94686</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=94681#p94681" />
			<content type="html"><![CDATA[<p>Проблема решилась так!</p><div class="codebox"><pre><code>set &quot;otkuda=%APPDATA%\Backup&quot;
 
pushd &quot;%~dp0&quot;
for %%i in (&quot;%CD%&quot;) do (
 &gt;&gt;&quot;log.txt&quot; &quot;7za.exe&quot; a &quot;%%~nxi.7z&quot; &quot;%otkuda%\*&quot;
 start &quot;&quot; &quot;blat.exe&quot; -install smtp.mail.ru mail@mail.ru 3 25 - mail@mail.ru password
 &quot;blat.exe&quot; -body &quot;Backup&quot; -subject Backup -to mail@mail.ru -attach &quot;%%~nxi.7z&quot;
)
popd</code></pre></div><p>Всем спасибо!</p>]]></content>
			<author>
				<name><![CDATA[texnar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33091</uri>
			</author>
			<updated>2015-06-21T16:07:09Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=94681#p94681</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=94671#p94671" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>shiz пишет:</cite><blockquote><div class="codebox"><pre><code>for %%I in (&quot;%~dp0&quot;) do set &quot;DirName=%%~nxI&quot;</code></pre></div><p>?</p></blockquote></div><br /><br /><p>Не-а. Вот так: </p><div class="codebox"><pre><code>for %%I in (&quot;%~dp0.&quot;) do set &quot;DirName=%%~nxI&quot;</code></pre></div><p>.</p>]]></content>
			<author>
				<name><![CDATA[Yury]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=30230</uri>
			</author>
			<updated>2015-06-21T11:16:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=94671#p94671</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=94666#p94666" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>for %%I in (&quot;%~dp0&quot;) do set &quot;DirName=%%~nxI&quot;</code></pre></div><p>?</p>]]></content>
			<author>
				<name><![CDATA[shiz]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26249</uri>
			</author>
			<updated>2015-06-21T10:31:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=94666#p94666</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[CMD/BAT: Задать имя текущей папки архиву 7z]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=94661#p94661" />
			<content type="html"><![CDATA[<p>Здравствуйте помогите пожалуйста делаю систему бекапа с архивированием и отправкой на электронную почту, как задать вместо <strong>Backup.7z имя_текущей_папки.7z </strong>? Знаю, что значение текущей папки %~dp0 но как передать его в нужные строки ума не приложу.</p><div class="codebox"><pre><code>;set a7z=%~dp0\7za.exe
set otkuda=%APPDATA%\Backup
set kuda=%~dp0
&quot;%a7z%&quot; a &quot;%kuda%\Backup.7z&quot; &quot;%otkuda%\*&quot;&gt;&gt;log.txt</code></pre></div><p>и вместо заголовка -body &quot;<strong>Backup</strong>&quot; и вложения -attach %~dp0\<strong>Backup.7z</strong> так же <strong>имя_текущей_папки</strong>?</p><div class="codebox"><pre><code>start blat.exe -install smtp.mail.ru mail@mail.ru 3 25 - mail@mail.ru password
blat.exe -body &quot;Backup&quot; -subject Backup -to mail@mail.ru -attach %~dp0\Backup.7z</code></pre></div>]]></content>
			<author>
				<name><![CDATA[texnar]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33091</uri>
			</author>
			<updated>2015-06-21T07:02:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=94661#p94661</id>
		</entry>
</feed>
