<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Выборка из тектового файла]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=23740</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=23740&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Выборка из тектового файла».]]></description>
		<lastBuildDate>Thu, 16 Aug 2012 20:58:30 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293487#p293487</link>
			<description><![CDATA[<div class="quotebox"><cite>yars пишет:</cite><blockquote><p>Это понятно. Но это я не столько безопасности ради, сколько 1) для контроля целостности принятого из сети файла, и 2) так узнаю о том, что локальные файлы устарели.</p></blockquote></div><p>1) для этого надо юзать ЭЦП<br />2) а для этого - дату.</p><p>Т.е. алгоритм такой:<br />1. читаем список файлов, и отбираем новые.<br />2. качаем новые.<br />3. проверяем ЭЦП скаченных файлов.</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Thu, 16 Aug 2012 20:58:30 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293487#p293487</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293325#p293325</link>
			<description><![CDATA[<p>Это понятно. Но это я не столько безопасности ради, сколько 1) для контроля целостности принятого из сети файла, и 2) так узнаю о том, что локальные файлы устарели.</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Thu, 16 Aug 2012 09:29:52 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293325#p293325</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293318#p293318</link>
			<description><![CDATA[<div class="quotebox"><cite>yars пишет:</cite><blockquote><p>Ну, мне кажется целесообразным проверять именно контрольную сумму.</p></blockquote></div><p>на самом деле, это всё ерунда. Надёжно проверять лишь ЭЦП от Патрега. md5 там лишь для контроля правильности записи CD/DVD и прочего такого (когда вы САМИ записывали диск, и следовательно злоумышленник не мог ничего испортить. А вот разные яндексы могут быть взломаны. Причём ничего не стоит сменить не только файл, но и md5)</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Thu, 16 Aug 2012 08:17:15 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293318#p293318</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293260#p293260</link>
			<description><![CDATA[<p>Про rsync знаю, это все в учебных целях, не более.</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Thu, 16 Aug 2012 03:10:39 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293260#p293260</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293259#p293259</link>
			<description><![CDATA[<p>Ну, мне кажется целесообразным проверять именно контрольную сумму. Сейчас скрипт работает по такому алгоритму: скачиваем FILELIST.TXT, выбираем из него&nbsp; имена файлов, проверяем: если это каталог, то создаем его, если&nbsp; симлинк, то смотрим, на какой файл указывает, проверяем наличие и контрольную сумму этого файла, если все в порядке, копируем этот файл, иначе скачиваем. Если это файл, то тоже проверяем контрольную сумму, если все в порядке, копируем, иначе качаем. Предполагается, что на диске лежит старая current, из которой мы собираем файлы, не менявшиеся со времени последней проверки. Сам скриптик не бог весть какой сложный, как закончу - выложу. Сейчас времени нет с ним&nbsp; заниматься.</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Thu, 16 Aug 2012 03:08:22 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293259#p293259</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293258#p293258</link>
			<description><![CDATA[<div class="quotebox"><cite>yars пишет:</cite><blockquote><p>мне нужно поддерживать актуальность &quot;локального зеркала&quot;, ну и покрепче въехать в скриптинг <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /></p></blockquote></div><p>man rsync, достаточно одной команды, возможно в cron-е, тем более, что поддержка и на оф. зеркалах, и на mirror.yandex.ru есть. <br />Также, есть смысл глянуть mirror-slackware-current.sh от AlienBOB-а.</p>]]></description>
			<author><![CDATA[null@example.com (bormant)]]></author>
			<pubDate>Thu, 16 Aug 2012 02:52:56 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293258#p293258</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=293254#p293254</link>
			<description><![CDATA[<div class="quotebox"><cite>yars пишет:</cite><blockquote><p>Ну, в принципе, да. Но, имхо, этот файл дает информацию в удобном для человека виде, а мне нужно поддерживать актуальность &quot;локального зеркала&quot;, ну и покрепче въехать в скриптинг</p></blockquote></div><p>лучше дату проверяйте.</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Thu, 16 Aug 2012 00:17:22 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=293254#p293254</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=292586#p292586</link>
			<description><![CDATA[<p>Я тоже чуть красоты навёл <span class="postimg"><img src="http://linuxforum.ru/extensions/bbcode_smiles/img/ab.gif" alt="http://linuxforum.ru/extensions/bbcode_smiles/img/ab.gif" /></span></p>]]></description>
			<author><![CDATA[null@example.com (-=Serj=-)]]></author>
			<pubDate>Sun, 12 Aug 2012 17:47:22 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=292586#p292586</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=292585#p292585</link>
			<description><![CDATA[<p>yars, <br />поправил, так справляется.</p>]]></description>
			<author><![CDATA[null@example.com (bormant)]]></author>
			<pubDate>Sun, 12 Aug 2012 17:41:39 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=292585#p292585</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=292584#p292584</link>
			<description><![CDATA[<div class="quotebox"><cite>bormant пишет:</cite><blockquote><p>Следить за изменениями просто: достаточно читать ChangeLog.txt</p></blockquote></div><p>Ну, в принципе, да. Но, имхо, этот файл дает информацию в удобном для человека виде, а мне нужно поддерживать актуальность &quot;локального зеркала&quot;, ну и покрепче въехать в скриптинг <img src="https://linuxforum.ru/img/smilies/ab.gif" alt="ab" /> <br /></p><div class="quotebox"><cite>bormant пишет:</cite><blockquote><p> с путём искать не пробовали?</p></blockquote></div><p>Попробую, спасибо!<br /></p><div class="quotebox"><cite>bormant пишет:</cite><blockquote><p>двойной rev зачем, cut -d&#039; &#039; -f5 разве не справляется?</p></blockquote></div><p>Ну, как-то не очень: </p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><div class="codebox"><pre><code>root
root

root
root
root
root
root
root
root
root
root
root
root
root
root
root
root
root
root
root

root </code></pre></div></div></div><p>UPD: А с конца выбрать текст легче...<br />И да, спасибо</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Sun, 12 Aug 2012 17:40:12 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=292584#p292584</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=292583#p292583</link>
			<description><![CDATA[<div class="codebox"><pre><code>#!/usr/bin/env python
import sys
f = open(&#039;FILELIST.TXT&#039;, &#039;r&#039;)
for line in  f.readlines():
    if line.find(sys.argv[1])&gt;0:
        print(line.split()[7], line.split()[4])</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (-=Serj=-)]]></author>
			<pubDate>Sun, 12 Aug 2012 17:39:25 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=292583#p292583</guid>
		</item>
		<item>
			<title><![CDATA[Re: Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=292581#p292581</link>
			<description><![CDATA[<p>Следить за изменениями просто: достаточно читать ChangeLog.txt. <br />Возвращаясь к вопросу: с путём искать не пробовали? Например,</p><div class="codebox"><pre><code>$ grep \\./CHECKSUMS.md5$ FILELIST.TXT
-rw-r--r--  1 root root    726680 2012-08-09 22:46 ./CHECKSUMS.md5</code></pre></div><p>даст одну нужную строку, а</p><div class="codebox"><pre><code>$ grep \\./CHECKSUMS.md5$ FILELIST.TXT | awk &#039;{print $5}&#039;
726680</code></pre></div><p>искомый размер.</p>]]></description>
			<author><![CDATA[null@example.com (bormant)]]></author>
			<pubDate>Sun, 12 Aug 2012 17:17:44 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=292581#p292581</guid>
		</item>
		<item>
			<title><![CDATA[Выборка из тектового файла]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=292579#p292579</link>
			<description><![CDATA[<p>Доброго времени!<br />Нужно вытащить из файла вида<br /></p><div class="codebox"><pre><code>drwxr-xr-x 11 root root      4096 2012-08-10 01:32 .
-rw-r--r--  1 root root     10188 2011-04-25 04:36 ./ANNOUNCE.13_37
-rw-r--r--  1 root root     20933 2006-10-02 04:36 ./BOOTING.TXT
-rw-r--r--  1 root root     15529 2012-08-05 15:40 ./CHANGES_AND_HINTS.TXT
-rw-r--r--  1 root root    726680 2012-08-09 22:46 ./CHECKSUMS.md5
-rw-r--r--  1 root root       198 2012-08-09 22:46 ./CHECKSUMS.md5.asc
-rw-r--r--  1 root root     17976 1994-06-10 02:28 ./COPYING
-rw-r--r--  1 root root     35147 2007-06-30 04:21 ./COPYING3
-rw-r--r--  1 root root     19531 2009-08-26 02:07 ./COPYRIGHT.TXT
-rw-r--r--  1 root root       616 2006-10-02 04:37 ./CRYPTO_NOTICE.TXT
-rw-r--r--  1 root root    150279 2012-08-10 01:32 ./ChangeLog.txt
-rw-r--r--  1 root root     33523 2008-12-08 18:12 ./FAQ.TXT
-rw-r--r--  1 root root    965411 2012-08-09 22:46 ./FILELIST.TXT
-rw-r--r--  1 root root      1565 2003-02-26 23:34 ./GPG-KEY
-rw-r--r--  1 root root    612107 2012-08-10 01:35 ./PACKAGES.TXT
-rw-r--r--  1 root root      9368 2011-04-21 23:38 ./README.TXT
-rw-r--r--  1 root root      3629 2012-07-13 16:27 ./README.initrd
-rw-r--r--  1 root root     34068 2011-04-08 15:15 ./README_CRYPT.TXT
-rw-r--r--  1 root root      8978 2011-04-08 15:16 ./README_LVM.TXT
-rw-r--r--  1 root root     17957 2011-03-15 18:32 ./README_RAID.TXT
-rw-r--r--  1 root root      3623 2011-04-25 04:57 ./RELEASE_NOTES
-rw-r--r--  1 root root     13855 2008-12-08 18:13 ./SPEAKUP_DOCS.TXT
-rw-r--r--  1 root root     17294 2008-12-08 18:13 ./SPEAK_INSTALL.TXT
-rw-r--r--  1 root root     58732 2010-05-18 21:47 ./Slackware-HOWTO
-rw-r--r--  1 root root      7017 2012-07-21 21:41 ./UPGRADE.TXT

...

-rw-r--r--  1 root root     16393 2012-07-06 21:13 ./usb-and-pxe-installers/usbimg2disk.sh  </code></pre></div><p>(файл - <a href="ftp://mirror.yandex.ru/slackware/slackware-current/FILELIST.TXT">ftp://mirror.yandex.ru/slackware/slackw … LELIST.TXT</a>) сведения о размере файла. С уникальными файлами отрабатывает на раз </p><div class="codebox"><pre><code>grep -e $name FILELIST.TXT | col | rev | cut -d&quot; &quot; -f4 | rev</code></pre></div><p>Но вот с неуникальными, типа CHECKSUMS.md5 grep честно возвращает все найденные совпадения. и мой скрипт впадает в ступор. Как получить размер файла? Спасибо заранее!<br />Вот проблемный кусок скрипта:<br /></p><div class="codebox"><pre><code>for i in $( cat &quot;$TMP/FILELIST.TXT&quot; | tail +7 | cut -d. -f2- ) ; do
    echo &quot;Checking: $i&quot;
    if [ -e &quot;$OLD$i&quot; ] ; then
        echo $i
        newsize=$( grep -e &quot;$i&quot; &quot;$TMP/FILELIST.TXT&quot; | col | rev | cut -d&quot; &quot; -f4 | rev )
        oldsize=$( grep -e &quot;$i&quot; &quot;$OLD/FILELIST.TXT&quot; | col | rev | cut -d&quot; &quot; -f4 | rev )
        echo &quot;Size of new file: $newsize, size of old file: $oldsize&quot;
    ...
    fi
...
done</code></pre></div><p>Нужно это, чтобы следить за обновлениями в current.</p>]]></description>
			<author><![CDATA[null@example.com (yars)]]></author>
			<pubDate>Sun, 12 Aug 2012 16:54:43 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=292579#p292579</guid>
		</item>
	</channel>
</rss>
