<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Angel&#039;s Sky &#187; Ander</title>
	<atom:link href="http://angels.org.ua/notatky/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://angels.org.ua</link>
	<description>FreeBSD/Linux/Unix hacks, tips and notes</description>
	<lastBuildDate>Thu, 08 Sep 2011 14:34:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Масове перейменування файлів</title>
		<link>http://angels.org.ua/notatky/masove-pereymenuvannya-fayliv/</link>
		<comments>http://angels.org.ua/notatky/masove-pereymenuvannya-fayliv/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 02:28:20 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Свої нотатки]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[sed]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=217</guid>
		<description><![CDATA[Якщо необхідно перейменувати всі файли в FreeBSD чи Linux, наприклад всі з розширенням .py to .pyx, Це можливо за допомогою наступної команди ls -d *.py &#124; sed 's/\(.*\).py$/mv "&#38;" "\1.pyx"/' &#124; sh Як воно працює? ls -d *.php3 &#8211; виводить &#8230; <a href="http://angels.org.ua/notatky/masove-pereymenuvannya-fayliv/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Якщо необхідно перейменувати всі файли в FreeBSD чи Linux, наприклад всі з розширенням .py to .pyx, Це можливо за допомогою наступної команди</p>
<p><code>ls -d *.py | sed 's/\(.*\).py$/mv "&amp;" "\1.pyx"/' | sh</code></p>
<p><span id="more-217"></span></p>
<p>Як воно працює?</p>
<p><code>ls -d *.php3 </code> &#8211; виводить список файлів .py в теці. Цей список відсилається за допомогою пайпу до наступної команди</p>
<p><code>sed ’s/\(.*\).py$/mv "&amp;" "\1.pyx"/’</code> &#8211; перевіряє на шаблон(регулярний вираз) та виділяє тільки ім&#8217;я файлу, а потім генерує текст команди</p>
<p><code>| sh</code> &#8211; бере текст команди з пайпу та виконує його</p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/masove-pereymenuvannya-fayliv/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Запуск програм окремо від шела</title>
		<link>http://angels.org.ua/notatky/zapusk-program-okremo-vid-shela/</link>
		<comments>http://angels.org.ua/notatky/zapusk-program-okremo-vid-shela/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 16:14:12 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Нотатки стосовно FreeBSD]]></category>
		<category><![CDATA[dtach]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[nohup]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=136</guid>
		<description><![CDATA[nohup Отже, почнемо з nohup. Вона вже є в системі і в FreeBSD, і в Linux. Завдання цієї утиліті зводиться до того, щоб запустити програму незалежно від шела та перенаправити стандартний ввід на /dev/null, а стандартний вивід &#8211; у nohup.out &#8230; <a href="http://angels.org.ua/notatky/zapusk-program-okremo-vid-shela/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>nohup</strong><br />
Отже, почнемо з nohup. Вона вже є в системі і в FreeBSD, і в Linux. Завдання цієї утиліті зводиться до того, щоб запустити програму незалежно від шела та перенаправити стандартний ввід на /dev/null, а стандартний вивід &#8211; у nohup.out (а якщо це неможливо &#8211; то у $HOME/nohup.out). Якщо необхідно, щоб вивід писався в інший файл, використовуйте перенаправлення:<br />
<code>$ nohup portaupgrade -va &gt;upgrade.txt</code><br />
<span id="more-136"></span></p>
<p><strong>dtach</strong><br />
Наступна програма &#8211; dtach. Вона не набагато складніша попередньої і знаходиться у FreeBSD в портах. У її мані написано, що «dtach це програма, яка емулює функцію від&#8217;єднання екран», тобто dtach займається емулюванням однієї-єдиної властивості скріну, а саме &#8211; створенням окремих сесій для кожної програми. Весь сенс у тому, щоб запустити програму під dtach&#8217;ем, а потім підключатися до неї, коли необхідно.</p>
<p>Цікавою особливістю є те, що dtac вимагає явно вказати, де створювати сокет, за допомогою якого ідентифікується сесія. Доступ до сесії цілком і повністю визначається доступом до сокету, так що якщо вам необхідно показати сесію всім &#8211; запускайте dtach, ставте права на сокет 644</p>
<p>Створити сесію з rtorrent&#8217;ом всередині (однойменний сокет буде створено в домашній директорії):<br />
<code>dtach -c $HOME/rtorrent rtorrent</code></p>
<p>Натисніть Ctrl + \, і ви покинете dtach. Щоб заново підключитися до сесії, що існує, наберіть:<br />
<code>dtach -a $HOME/rtorrent.</code></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/zapusk-program-okremo-vid-shela/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Iнформація про систему FreeBSD</title>
		<link>http://angels.org.ua/notatky/freebsd-information/</link>
		<comments>http://angels.org.ua/notatky/freebsd-information/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 15:00:26 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Нотатки стосовно FreeBSD]]></category>
		<category><![CDATA[atacontrol]]></category>
		<category><![CDATA[camcontrol]]></category>
		<category><![CDATA[dd]]></category>
		<category><![CDATA[devinfo]]></category>
		<category><![CDATA[dmesg]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[hostname]]></category>
		<category><![CDATA[info]]></category>
		<category><![CDATA[last]]></category>
		<category><![CDATA[pciconf]]></category>
		<category><![CDATA[sysctl]]></category>
		<category><![CDATA[uname]]></category>
		<category><![CDATA[uptime]]></category>
		<category><![CDATA[usbdevs]]></category>
		<category><![CDATA[utils]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=77</guid>
		<description><![CDATA[Інформація про систему FreeBSD Повний вивід інформації про операційну систему: uname -a FreeBSD ng.portaone.com 7.2-RELEASE-p2 FreeBSD 7.2-RELEASE-p2 #0: Tue Jun 30 18:08:00 EEST 2009 root@ng.intra:/usr/obj/usr/src/sys/GENERIC i386 Виводить ident ядра: uname -i GENERIC Виводить апаратну платформу: uname -m i386 Виводить им&#8217;я(hostname) &#8230; <a href="http://angels.org.ua/notatky/freebsd-information/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Інформація про систему FreeBSD</p>
<p>Повний вивід інформації про операційну систему:<br />
<code>uname -a<br />
FreeBSD ng.portaone.com 7.2-RELEASE-p2 FreeBSD 7.2-RELEASE-p2 #0: Tue Jun 30 18:08:00 EEST 2009 root@ng.intra:/usr/obj/usr/src/sys/GENERIC i386</code></p>
<p>Виводить ident ядра:<br />
<code>uname -i<br />
GENERIC</code></p>
<p>Виводить апаратну платформу:<br />
<code>uname -m<br />
i386</code><br />
<span id="more-77"></span></p>
<p>Виводить им&#8217;я(hostname) системи:<br />
<code>uname -n<br />
ng.intra</code></p>
<p>Виводить архітектуру процесора:<br />
<code>uname -p<br />
i386</code></p>
<p>Виводить рівень релізу системи<br />
<code>uname -r<br />
7.2-RELEASE-p2</code></p>
<p>Виводить ім&#8217;я операційної системи<br />
<code>uname -s<br />
FreeBSD</code></p>
<p>Вивід інформації про реліз:<br />
<code>uname -v<br />
FreeBSD 7.2-RELEASE-p2 #0: Tue Jun 30 18:08:00 EEST 2009     root@ng.intra:/usr/obj/usr/src/sys/GENERIC</code></p>
<p>Читає BIOS:<br />
<code>dd if=/dev/mem bs=1k skip=768 count=256 2&gt;/dev/null | strings -n 8</code></p>
<p>Виводить скільки часу система працювала + завантаження:<br />
<code>uptime</code></p>
<p>Ім&#8217;я системи &#8211; hostname:<br />
<code>hostname</code></p>
<p>Опис ієрархії файлової системи:<br />
<code>man hier</code></p>
<p>Показує історію перевантаження:<br />
<code>last reboot</code></p>
<p>Виводить інформацію про знайдене апаратне забезпечення та повідомлення завантаження<br />
<code>dmesg</code></p>
<p>Список ресурсів апаратного забезпечення у вигляді дерева:<br />
<code>devinfo -rv</code></p>
<p>Модель процесора:<br />
<code>sysctl hw.model</code></p>
<p>Виводить інформацію про аппаратне забеспечення:<br />
<code>sysctl hw</code></p>
<p>Використання пам`яті:<br />
<code>sysctl vm</code></p>
<p>Розмір апаратної пам`яті:<br />
<code>dmesg | grep "real mem"</code></p>
<p>Налаштування пам`яті ядра та додаткова інформація<br />
<code>sysctl -a | grep mem</code></p>
<p>Список налаштованих пристроїв:<br />
<code>sysctl dev</code></p>
<p>Список PCI пристроїв:<br />
<code>pciconf -l -cv </code></p>
<p>Список USB пристроїв:<br />
<code>usbdevs -v</code></p>
<p>Список ATA пристроїв:<br />
<code>atacontrol list</code></p>
<p>Виводить список SCSI пристроїв:<br />
<code>camcontrol devlist -v</code></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/freebsd-information/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Видалення строки з файлу</title>
		<link>http://angels.org.ua/notatky/vydalyty-stroku-failu/</link>
		<comments>http://angels.org.ua/notatky/vydalyty-stroku-failu/#comments</comments>
		<pubDate>Sun, 31 Jul 2011 00:32:46 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Нотатки стосовно FreeBSD]]></category>
		<category><![CDATA[Свої нотатки]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[sed]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=167</guid>
		<description><![CDATA[Іноді необхідно видалити одну чи декілька строк. Видалення номера строки sed '13d' file.txt Видалення інтервалу з 8 по 10 строку: sed '8,10d' file.txt Також можливо видали строки які містять строки, або задовольняють регулярним виразам: Видалити останню строку: sed '$d' file.txt &#8230; <a href="http://angels.org.ua/notatky/vydalyty-stroku-failu/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Іноді необхідно видалити одну чи декілька строк.</p>
<p>Видалення номера строки</p>
<p><code>sed '13d' file.txt</code></p>
<p>Видалення інтервалу з 8 по 10 строку:</p>
<p><code>sed '8,10d' file.txt </code></p>
<p>Також можливо видали строки які містять строки, або задовольняють регулярним виразам:</p>
<p>Видалити останню строку:</p>
<p><code>sed '$d' file.txt</code></p>
<p>Видалити всі пусті строки:</p>
<p><code>sed '/^$/d' file.txt<br />
sed '/./!d' file.txt</code></p>
<p>Видалити строк, які задовольняють регулярним виразам:</p>
<p><code>sed '/[0-9/][0-9]*$/d' file.txt</code></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/vydalyty-stroku-failu/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Об&#8217;єднати строки тестового файлу у одну</title>
		<link>http://angels.org.ua/notatky/join-strings/</link>
		<comments>http://angels.org.ua/notatky/join-strings/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 16:18:44 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Свої нотатки]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[tr]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=163</guid>
		<description><![CDATA[Об&#8217;єднати строки тестового файлу в одну можна дуже легко за домомогою настуної команди tr -d '\n\' &#60; /path/to/file На виході ви отримаєту одну строку]]></description>
			<content:encoded><![CDATA[<p>Об&#8217;єднати строки тестового файлу в одну можна дуже легко за домомогою настуної команди</p>
<p><code>tr -d '\n\' &lt; /path/to/file</code></p>
<p>На виході ви отримаєту одну строку</p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/join-strings/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Tar: витягнути один чи декілька файлів з архіву</title>
		<link>http://angels.org.ua/notatky/tar-extract/</link>
		<comments>http://angels.org.ua/notatky/tar-extract/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 19:06:00 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Нотатки стосовно FreeBSD]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[tar]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=131</guid>
		<description><![CDATA[Для того щоб витягнути один файл з архіву: # tar zxvf tarfile.tgz –include=”desiredfile” Використання шаблонів: # tar zxvf tarfile.tgz –include=”desiredfile*” ‘desiredfile’ повинен використовувати повний шлях Щоб перевірити повний шлях файлу: # tar tf tarfile.tgz]]></description>
			<content:encoded><![CDATA[<p>Для того щоб витягнути один файл з архіву:<br />
<code># tar zxvf tarfile.tgz –include=”desiredfile”</code></p>
<p>Використання шаблонів:<br />
<code># tar zxvf tarfile.tgz –include=”desiredfile*”</code></p>
<p>‘desiredfile’ повинен використовувати повний шлях</p>
<p>Щоб перевірити повний шлях файлу:</p>
<p><code># tar tf tarfile.tgz</code></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/tar-extract/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Google Gears для Firefox3.5 у FreeBSD</title>
		<link>http://angels.org.ua/notatky/google-gears-freebsd-firefox35/</link>
		<comments>http://angels.org.ua/notatky/google-gears-freebsd-firefox35/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 14:23:51 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[ports]]></category>
		<category><![CDATA[Нотатки стосовно FreeBSD]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[google gears]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=122</guid>
		<description><![CDATA[Ось нещодавно зацікавився Google Gears, але виявилось, що під FreeBSD його не підтримують. Так що було вирішено спробувати портувати під  FreeBSD.  3 дні і маємо розширення для Firefox3.5: gears-freebsd-opt-0.5.34.0.]]></description>
			<content:encoded><![CDATA[<p>Ось нещодавно зацікавився Google Gears, але виявилось, що під FreeBSD його не підтримують. Так що було вирішено спробувати портувати під  FreeBSD.  3 дні і маємо розширення для Firefox3.5: <a href="http://angels.org.ua/wp-content/uploads/gears-freebsd-opt-0.5.34.0.xpi">gears-freebsd-opt-0.5.34.0</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/google-gears-freebsd-firefox35/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Доступ до cyrus</title>
		<link>http://angels.org.ua/notatky/dostup-do-cyrus/</link>
		<comments>http://angels.org.ua/notatky/dostup-do-cyrus/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 10:16:52 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Свої нотатки]]></category>
		<category><![CDATA[cyradm]]></category>
		<category><![CDATA[cyrus]]></category>
		<category><![CDATA[imap]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=115</guid>
		<description><![CDATA[Іноді треба зайти до cyrus (imap) не маючи паролю або просто його не знаючи. 13:09:20 root@hostname:~&#62; grep admins /usr/local/etc/imapd.conf #admins: &#60;none&#62; admins: cyrus Тоді 12:33:09 root@hostname:~&#62; cyradm -u cyrus localhost IMAP Password Міняємо пароль для cyrus 12:33:20 root@hostname:~&#62; sudo passwd &#8230; <a href="http://angels.org.ua/notatky/dostup-do-cyrus/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Іноді треба зайти до cyrus (imap) не маючи паролю або просто його не знаючи.</p>
<p><code>13:09:20 root@hostname:~&gt; grep admins /usr/local/etc/imapd.conf<br />
#admins: &lt;none&gt;<br />
admins: cyrus</code></p>
<p>Тоді</p>
<p><code>12:33:09 root@hostname:~&gt; cyradm -u cyrus localhost<br />
IMAP Password</code></p>
<p>Міняємо пароль для cyrus</p>
<p><code>12:33:20 root@hostname:~&gt; sudo passwd cyrus<br />
Changing local password for cyrus<br />
New Password:<br />
Retype New Password:</code></p>
<p>І вуаля:</p>
<p><code>12:34:09 root@hostname:~&gt; cyradm -u cyrus localhost<br />
IMAP Password:localhost&gt;<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/dostup-do-cyrus/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Команди Vim</title>
		<link>http://angels.org.ua/notatky/comands-vim/</link>
		<comments>http://angels.org.ua/notatky/comands-vim/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 14:24:43 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Свої нотатки]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[vim]]></category>
		<category><![CDATA[редактор]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=110</guid>
		<description><![CDATA[Це спикок основних команд редактора Vim / word Пошук слова &#8220;word&#8221; зверху вниз ? word Пошук слова &#8220;word&#8221; знизу вгору / jo [ha] n&#62; Шукати &#8220;john&#8221; або &#8220;joan&#8221; /\&#60; the Шукати слова, які починаються на &#8220;the&#8221; /the\&#62; Шукати слова що &#8230; <a href="http://angels.org.ua/notatky/comands-vim/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Це спикок основних команд редактора Vim</p>
<p>/ word Пошук слова &#8220;word&#8221; зверху вниз<br />
? word Пошук слова &#8220;word&#8221; знизу вгору<br />
/ jo [ha] n&gt; Шукати &#8220;john&#8221; або &#8220;joan&#8221;<br />
/\&lt; the Шукати слова, які починаються на &#8220;the&#8221;<br />
/the\&gt; Шукати слова що закінчуються на &#8220;the&#8221;<br />
/ \ &lt;&#8230;. \&gt; Шукати слова з чотирьох символів<br />
/ fred \ | joe Шукати &#8220;fred&#8221; або &#8220;joe&#8221;<br />
/ \ &lt;\ d \ d \ d \ d \&gt; Шукати 4 цифри поспіль<br />
/ ^ \ n \ (3) Шукати 3 порожні рядки<br />
: bufdo / searchstr / Шукати у всіх відкритих файлах</p>
<p><span id="more-110"></span>Заміна<br />
:% s / old / new / g Замінити всі входження &#8220;old&#8221; на &#8220;new&#8221;<br />
:% s / old / new / gw Замінити всі входження &#8220;old&#8221; на &#8220;new&#8221; із запитом підтвердження<br />
: 2,35 s / old / new / g Замінити всі входження &#8220;old&#8221; на &#8220;new&#8221; між 2 і 35 рядками<br />
: 5, $ s / old / new / g Замінити всі входження &#8220;old&#8221; на &#8220;new&#8221; починаючи з 5 рядка і до кінця файлу<br />
:% s / ^ / hello / g Додати &#8220;hello&#8221; на початок кожного рядка<br />
:% s / $ / Harry / g Додати &#8220;Harry&#8221; в кінець кожного рядка<br />
:% s / onward / forward / gi Замінити &#8220;onward&#8221; на &#8220;forward&#8221; з урахуванням регістру<br />
:% s / * $ / / g Забрати всі прогалини<br />
: g / string / d Видалити всі рядки, що містять &#8220;string&#8221;<br />
: v / string / d Видалити всі рядки, що не містять &#8220;string&#8221;<br />
: s / Bill / Steve / Замінити перше входження &#8220;Bill&#8221; на &#8220;Steve&#8221; в поточному рядку<br />
: s / Bill / Steve / g Замінити всі входження &#8220;Bill&#8221; на &#8220;Steve&#8221; в поточному рядку<br />
:% s / \ r / / g Прибрати символ повернення каретки (Такі тексти зазвичай приходять від windows-користувачів)<br />
:% s #&gt;[^&lt;] \ +&gt; # # g Очистити текст від HTML-тегів<br />
:% s / ^ \ (.* \) \ n \ 1 $ / \ 1 / Видалити рядки, що повторюються двічі<br />
Ctrl + a Збільшити число під курсором на одиницю<br />
Ctrl + x Зменшити число під курсором на одиницю<br />
ggVGg? Перетворити текст у Rot13</p>
<p>Регістр<br />
Vu переклад рядок у нижній регістр<br />
VU переклад рядок у верхній регістр<br />
g ~ ~ Інвертувати регістр<br />
vEU переклад слово під курсором у верхній регістр<br />
vE ~ Інвертувати регістр слова<br />
ggguG Перекласти весь текст у нижній регістр<br />
: set ignorecase Регістронезалежний пошук<br />
: set smartcase Ігнорувати регістр при пошуку, якщо у шуканому виразі немає символів верхнього регістру<br />
:% s / \ &lt;. / \ u &amp; / g переклад першу букву кожного слова у верхній регістр<br />
:% s / \ &lt;. / \ l &amp; / g переклад першу букву кожного слова у нижній регістр<br />
:% s / .* / \ u &amp; Провести першу літеру першого слова в кожному рядку у верхній регістр<br />
:% s / .* / \ l &amp; Провести першу літеру першого слова в кожному рядку в нижній регістр Читання / запис файлів : 1,10 w outfile Записати в outfile з першого по десяте рядка<br />
: 1,10 w&gt;&gt; outfile Додати в outfile з першого по десятий рядки<br />
: r infile Вставити вміст файлу infile<br />
: 23r infile Вставити вміст файлу infile після 23 рядки</p>
<p>Навігація по ФС<br />
: e. Відкрити вбудований файл-менеджер<br />
: Sex Розбити вікно і відкрити вбудований файл менеджер<br />
: browse e Графічний файл-менеджер<br />
: ls Список буферів<br />
: cd .. Перейти в батьківську директорію<br />
: args Список відкритих файлів<br />
: args *. php Відкрити всі файли з розширенням *. php<br />
: grep expression *. php Показати список файлів з розширенням php, що містять в імені expression<br />
gf Відкрити файл з ім&#8217;ям, що дорівнює слову, що знаходиться під курсором</p>
<p>Взаємодія з ОС<br />
:! pwd Виконати команду pwd і повернутися<br />
!! pwd Виконати команду pwd і вставити результат в редактор<br />
: sh Відкрити шелл<br />
$ exit Повернутися в редактор з шелла</p>
<p>Вирівнювання<br />
:%! fmt Вирівняти всі рядки<br />
!) fmt Вирівняти всі рядки в поточній позиції<br />
5!! Fmt Вирівняти наступні 5 рядків</p>
<p>Вкладки<br />
: tabnew Створити нову вкладку<br />
gt Перехід до наступної вкладки<br />
: tabfirst Перейти на першому вкладку<br />
: tablast Перейти на останню вкладку<br />
: tabm n (position) Змінити порядок вкладок<br />
: tabdo% s / foo / bar / g Виконати команду в усіх вкладках<br />
: tab ball Помістити всі відкриті файли під вкладки</p>
<p>Поділ вікна<br />
: e filename Редагувати filename в поточному вікні<br />
: split filename Розділити вікно і відкрити filename<br />
ctrl-w + стрілка ВГОРУ Перемістити курсор у вікно<br />
ctrl-w ctrl-w Перемістити курсор в наступне вікно<br />
ctrl-w_ Максимізувати поточне вікно<br />
ctrl-w = Підігнати вікна за розміром<br />
10 ctrl-w + Збільшити поточне вікно на 10 рядків<br />
: vsplit file Вертикально розділити вікно<br />
: sview file Розділити вікно і відкрити file тільки для читання<br />
: hide Закрити поточне вікно<br />
: only Закрити всі вікна, крім поточного<br />
: b 2 Відкрити # 2 в поточному вікні</p>
<p>Автодоповнення<br />
Ctrl + n Ctrl + p (в режимі вставки) Доповнити слово<br />
Ctrl + x Ctrl + l Доповнити рядок<br />
: set dictionary = dict Встановити словник<br />
Ctrl + x Ctrl + k Доповнення зі словника</p>
<p>Мітки<br />
mk Позначити поточну позиція як k<br />
&#8216;K Перейти до мітки k<br />
d&#8217;k Видалити все до позначки k</p>
<p>Скорочення<br />
: ab mail mail@provider.org Визначити mail як скорочення від mail@provider.org</p>
<p>Відступи<br />
: set autoindent Включити автоматичну розстановку відступів<br />
: set smartindent Увімкнути &#8220;розумну&#8221; розстановку відступів<br />
: set shiftwidth = 4 Встановити відступ рівний 4 прогалинам<br />
ctrl-t, ctrl-d Прибрати / додати відступ в режимі вставки<br />
&lt;&lt;Додати відступ<br />
&gt;&gt; Прибрати відступ<br />
Підсвітка синтаксису<br />
: syntax on Увімкнути підсвічування<br />
: syntax off Вимкнути підсвічування<br />
: set syntax = perl Встановити режим підсвічування</p>
<p>Оригінальний пост:</p>
<p><a href="http://boombick.org/blog/posts/84">http://boombick.org/blog/posts/84</a></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/comands-vim/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
		<item>
		<title>Програвання rtp потоку за допомогою rtpbreak</title>
		<link>http://angels.org.ua/notatky/progravannya-rtp-rtpbreak/</link>
		<comments>http://angels.org.ua/notatky/progravannya-rtp-rtpbreak/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 13:58:44 +0000</pubDate>
		<dc:creator>Ander</dc:creator>
				<category><![CDATA[Нотатки стосовно FreeBSD]]></category>
		<category><![CDATA[freebsd]]></category>
		<category><![CDATA[mplayer]]></category>
		<category><![CDATA[rtp]]></category>
		<category><![CDATA[rtpbreak]]></category>
		<category><![CDATA[sox]]></category>

		<guid isPermaLink="false">http://angels.org.ua/?p=99</guid>
		<description><![CDATA[Якщо необхідно прослухати RTP з dump файлу pcap можна скористатися утилітою rtpbreak user@hostname:~$rtpbreak -r dump.pcap user@hostname:~$ ls -1 rtp.0.0.pcap rtp.0.0.raw rtp.0.0.txt rtp.0.1.pcap rtp.0.1.raw rtp.0.1.txt rtp.0.txt Ось ми маємо 2 RTP сесії та логи: user@hostname:~$ cat rtp.0.0.txt RTP stream id: rtp.0.0 &#8230; <a href="http://angels.org.ua/notatky/progravannya-rtp-rtpbreak/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Якщо необхідно прослухати RTP з dump файлу pcap можна скористатися утилітою rtpbreak</p>
<p><code>user@hostname:~$rtpbreak -r dump.pcap</code></p>
<p><span id="more-99"></span></p>
<p><code>user@hostname:~$ ls -1<br />
rtp.0.0.pcap<br />
rtp.0.0.raw<br />
rtp.0.0.txt<br />
rtp.0.1.pcap<br />
rtp.0.1.raw<br />
rtp.0.1.txt<br />
rtp.0.txt</code></p>
<p>Ось ми маємо 2 RTP сесії та логи:</p>
<p><code>user@hostname:~$ cat rtp.0.0.txt<br />
RTP stream id: rtp.0.0<br />
Packet source: iface  'wifi0'<br />
First seen packet: 19/02/2008#09:49:29 (pcap time)<br />
Stream peers: 192.168.0.30:2072 =&gt; 192.168.0.20:2074<br />
RTP ssrc: 1695569992<br />
RTP payload type: 0 (ITU-T G.711 PCMU)<br />
Last seen packet: 19/02/2008#09:50:57 (pcap time)<br />
Call length: 1m28s<br />
Flushed packets: 2819<br />
Lost packets: 106 (3.62%)<br />
RTP payload length: 240 bytes (fixed)</code></p>
<p><code>hostname@hostname:~$ cat rtp.0.1.txt<br />
RTP stream id: rtp.0.1<br />
Packet source: iface  'wifi0'<br />
First seen packet: 19/02/2008#09:49:29 (pcap time)<br />
Stream peers: 192.168.0.20:2074 =&gt; 192.168.0.30:2072<br />
RTP ssrc: 112268413<br />
RTP payload type: 0 (ITU-T G.711 PCMU)<br />
Probable reverse RTP stream id: rtp.0.0<br />
Last seen packet: 19/02/2008#09:50:57 (pcap time)<br />
Call length: 1m28s<br />
Flushed packets: 2800<br />
Lost packets: 115 (3.95%)<br />
RTP payload length: 240 bytes (fixed)</code></p>
<p>Тепер можемо конвертувати у wav формат:<br />
<code>user@hostname</code>:~$ sox -r8000 -c1 -t ul rtp.0.0.raw -t wav0.wav<br />
user@hostname:~$ sox -r8000 -c1 -t ul rtp.0.1.raw -t wav1.wav</p>
<p>Можна об&#8217;єднати файли:</p>
<p><code>user@hostname:~$ sox -m 0.wav  1.wav call.wav</code></p>
<p>Ну і програти:</p>
<p><code>user@hostname:~$ mplayer call.wav</code></p>
]]></content:encoded>
			<wfw:commentRss>http://angels.org.ua/notatky/progravannya-rtp-rtpbreak/feed/</wfw:commentRss>
		<slash:comments>-1</slash:comments>
		</item>
	</channel>
</rss>

