Архив за юни, 2006

Идиоти по пътищата

16.06.2006

Тва последните две години да караш в София си ебало майката тотално. Има повече коли отколкото население май. И поне половината, дето карат, са недоебани мъжки курви. Всеки селяк с някво изтърбушено BMW, Mercedes, Golf 2, Golf 3, Audi 80 или Opel Vectra го фащат некви неясни желания да демонстрира, че е мъж с главно Ж, и че просто трябва, ама наистина трябва да мине пръв. Какво е общото между тези марки ли – ми всички са немски. Тия дето карат японски коли примерно са далеч по-нормални. Тва не мога да го разбера – типичен сценарий – караш си спокойно, на никой не пречиш. Зад тебе няква сапунерка те настига, след което мъжката курва вътре решава, че е една идея по-важен от теб, и дава газ. Гаааз, ГААААААЗ, ГААААААААААААААЗЗЗЗ (с истерични нотки)! Фърчат ламарини, мъгла от газове, нооо… – минава те и застава пред тебе. И кара пред тебе. Е така, да видиш, че той е по-така. Няма намерение да изпреварва повече. Щото има спойуер и лепенка на Ремус, и etc. Не че на следващото кръстовище не го настигаш. И понеже си по-светнат как действат местните светофари го задминаваш показвайки му курове в устата и да се ебе в гъза. То има и други, противоположни на тия – на всеки червен светофар изпадат в летаргия и трябва да им докараш цигански оркестър, за да се сепнат. Изобщо по пътищата си ебало майката последно време. Пълно е с автобуси, маршрутки, камиони с пясък, бетонобъркачки, трактори, комбайни, бронетранспортьори, извънгабаритни военни машини, автовози, тирове, вчера на бул. Малинов кацна самолет, а миналата седмица се приземи совалка. Въобще тия улици станаха някъв фекалиен отходен канал. За да минеш 100 метра трябва да утрепеш няколко милиона нервни клетки. Как да не ти се иска да фанеш поредния идиот, да го засечеш, да го накараш да спре, да излезеш, да го изкараш от колата, след което да го пребиеш като животно с шутове и да му блъскаш главата в капака за назидание на всички. Е на моменти просто ми иде да се засиля и да се размажа челно в поредния пеерас, ама добре че си пия хапчетата редовно хохохо.

Най-накрая нормален backup

10.06.2006

Backup-ите са мноо важно нещо, затова е важно за се backup-ва, дори трябва да се backup-ват backup-ите, щото никога не знаеш какво и що. А и не случайно има цяла индустрия, която се занимава с backup-и, устройства за backup-и, съхранение на backup-и и etc. Обаче цялата тая индустрия може да върви по дяволите, всичко което е нужно е WinRAR.exe и cmd.exe. Наскоро попаднах на една страница с много хитри command line скриптчета за Windows XP cmd.exe (може и за Windows 2000 да става). Значи няма никакъв проблем с архивирането на цяла директория с WinRAR.exe – command line опциите ги има в help-тъ и etc. Проблемът е как да си кръстиш файла с архива – най-удачният, поне за мен, вариант е 2006_11_23.rar – т.е. година_месец_ден.rar. Е да, ама как да ги вземеш тия числа в командния ред? Ми мноо лесно се оказва, ставало с командата for. Тая команда я знаех като средство за изреждане на всички файлове с някаква маска и да се прави нещо с тях, напр.

for %f in (*.txt) do type %f

тва реално ще разпечата последователно всички *.txt файлове.

Обаче в XP-то имало и по-яки неща, които могат да се правят. Общо взето for /? обяснява всичко. Тва което ме заинтригува е възможността за split-ване (или „разцепване“, ох) на даден низ от зададени разделители и присвояването на „парчетата“ на environment променливи. В крайна сметка стана е таков скрипт:

* * *

@echo off
echo Performing backup…

D:\Programs\WinRAR\WinRAR.exe a -r -ep1
F:\_Backup\PrjName\Temp\PrjName.rar C:\Inetpub\wwwroot\PrjName

for /f „tokens=1-3 delims=. “ %%a in (‘date /t’) do (
set dd=%%a
set mm=%%b
set yyyy=%%c
)

move /y F:\_Backup\PrjName\Temp\PrjName.rar F:\_Backup\PrjName\%yyyy%_%mm%_%dd%.rar

set dd=
set mm=
set yyyy=

* * *

Начи редът с архивирането не е ракетна наукаa е за add, -r е за рекурсивно обхождане, -ep1 е за да не ръга в архива пълните пътища заедно с C:\Inetpub\wwwroot. Следващият ред, дето малко мяза на изкилиферчен Perl, фаща всеки компонент от текущата дата и го слага в environment променливи. Тука е важно да се отбележи, че аз съм на Български регионални настройки и date /t ми връща нащо от рода на 10.06.2006 г. За тва в частта delims= има един интервал след точката, за да се отдели г.-то от 2006. Тука отделните „парчета“ влизат в променливи с имена %%a, %%b, etc., като ако бях задал … %%x in (‘date /t’) … примерно, щяха да вървят %%x, %%y, etc.

В крайна сметка последният ред е тривиален, а накрая затривам променливите, макар да е възможно сами да се затриват като свърши .bat файлът.

Сега всичкото тва може да се направи в една стъпка – директно архивирам с готовото име. Обаче ако се правят по повече от един backup-и на ден, WinRAR-а прави мизерии като иска да обнови съществуващ архив, и най-добре да се прави наново и начисто. Може първо да се трие старият архив, обаче кво ше стане, ако токът спре докато се прави новият и като си пуснеш машината дискът с проекта изгорял – ужаст. Транзакция тряа тука.

Изкарваш си един shortcut на desktop-а, слагаш му неква икона на backup устройство и си good to go.