DN42 egy csodálatos projekt, amely lehetővé teszi, hogy fejlessze képességeit, kaparás a BGP termék környezet nélkül, nem érzed, hogy drága eszközök, amivel a labor tennie szimulációk, GNS3. Ugyanakkor nincs egy tiszta laboratóriumi környezetben, ahol nincs valós probléma. Részt vesz 1 a projekt körülbelül egy év csomópont. Az egyik a problémák, a projekt 1:1 a valós világ – Amikor valaki bejelentette előtagok, hogy nem kell nyilatkozni. Azért, mert lusta vagyok, és nem érzem gépelési viszont idő szűrők, Azt hittem, a probléma-val egy egyszerű bash script, hogy létrehoz egy előtag-listát, a neve dn42, és öntsük az érvényes előtagok.

#!/bin/bash</pre>
vtysh -c 'conf t' -c "no ip prefix-list dn42"; #drop old prefix list

while read pl
do
vtysh -c 'conf t' -c "$pl"; #insert prefix list row by row
done < <(curl -s https://ca.dn42.us/reg/filter.txt | grep -e ^[0-9] | awk '{ print "ip prefix-list dn42 seq " $1 " " $2 " " $3 " ge " $4 " le " $5}' | sed "s_/\([0-9]\+\) ge \1_/\1_g;s_/\([0-9]\+\) le \1_/\1_g");
vtysh -c 'wr' #write new prefix list

A https érvényes prediksi listája://CA.dn42.us/reg/Filter.txt a fő szállítószalag + kis mod hogy legyen képes generálni egy előtag lista. A parancsok végrehajtása a vtysh.

Az én-m kedvenc szöveg szerkesztő Geany. Ő is nagyon minimális IDE amely támogatja a rengeteg nyelvek – Shell, php, Python, C … stb. A kocsi-kiegészít, és ezzel egy időben olyan fürgén. Hiányzik neki egy szép lehetőséget, de abban az időben, nekem több mint megfelelő. Elkezdtem online tanfolyam Python programozási a SoftUni – frissíteni az én-m tudás, és azokat nadgradâ, mert én nem követtem megfelelően történik, a python 3. A hangszórók természetesen ajánljuk PyCharm a programozási pyton IDE, de én vagyok távol az én ízlésemnek, Természetesen használja Geany gyakorlatok.

Az előadások alatt úgy éreztem, egy fájdalmas 2 lipsi

  1. Python-kiegészítés és a kilégzés a dokumentációt, funkciók és módszerek
  2. Nincs ellenőrzés nélkül a szabványos pep8

A jó dolog az, hogy elég rugalmas ahhoz a Geany konfigurációs és lehet könnyen hozzáadott-hoz hiányzó egyek. hagyj Add hozzá python dokumentáció Mi ide:

  • húzza a a következő parancsfájl valahol az UTUNK, például a/usr/bin felejtsd el, hogy végrehajtható
  • A fájl ~/.config/geany/filedefs/filetypes.python mint mi adjuk hozzá a következő sort beállítások szerkesztése context_action_cmd = pydocw: %s. Ha ott van csak hozzá a nevét a binarkata az előző lépés. Ha fut a Geany újraindít.
  • Már már húzta a függvény információkat összefüggésben-akció. Már hozzáadott egy omlós torta-hoz az én-m előnyben részesített, nem látok semmilyen működési. Szivárog, nekem ez a megközelítés, mint azért, mert sok bosszant én netbeans megközelítés.

eddig jó. Majd szeretnék egy érvényesítési az a kód, amit írsz – e írni, hogy az általában elfogadott szabványok szerint, vagy írjon bármilyen Weirdos. Általában találni újra tutorialče hogyan történnek a dolgok, de ez egy kicsit elavult – Geany mindene épült Ön csak kell felszerel a csomag pep8. A Debian apt-get telepítse pep8 működik, a többi distrota, hogy felfedezzék, hogy a varázslat történik. A második a Build menü gomb (legalábbis nekem) van a tépés után kattintva Ön talál neki milyen csúnya kódot készítette 😀

Ernyőz-ból 2016-01-11 20-42-21

Ez tulajdonképpen a Geany jobban működjön, a Python és ugyanabban az időben, továbbra is egy gyors vezetés szeretne húzni a golyó, a CPU-t hogyan.

Változtatni a domain WordPress némi fájdalom. Nemrég volt, hogy több dolgot már gyorsan történik sport 😀 . Ha tudok sumariziram lépések 2 – természetesen nem mozgó kép, beállításokat, ha változás teljesen tárhely.

1. Megváltoztatása a régi URL-t az új – Dolgok, amiket itt jelentéktelen. Nyissa meg a wp-config.php fájlt, és helyezze el ezeket 2 sor

define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');

Mivel a http://example.com az új.

2. Eddig jó most helyszínen nyit url-edik munkát, de feltöltött tartalmak, például képek, dokumentumok és így nem látható. Itt már van egy ért. Meg kell cserélni a régi url-én egy új adatbázis. Ez rettenetesen nehéz folyamat különösen a kezdők, akik nem viselik jól az SQL szintaxis, но вече има доста приятен скрипт searchreplacedb2, ami miatt kényelmetlen az Ön számára. Felhasználási triviális – töltsd fel a gyökér könyvtárat, ahol a wordpress oldal, és nyissa meg a böngésző a. След това следвате стъпките като първо ще ви пита за потребителско име и парола който е взел от вашия wp-config.php и след това ще ви пита за новото и старото url. След последната стъпка ще се наложи да поизчакате при мен отнемаше средно 40сек -50сек.

Това е във общи линии нищо трудно или супер сложно.

A shell script wants your job

Днес докато работех видях че една от машините лагна много жестоко. Влизам в нея гледам един cron наблъскал адски много зомби процеси (грубо около 50-60). Нямаше как да ги убия всички с killall затова се наложи да направя малко по грамотно решение на проблемада драсна едно елементарно bash скриптче което да намери и убие процесите. 50-тина PID-а не се пишат лесно на ръка :D. Скрипта го надрасках за минута и е свръх елементарен но все пак заслужава внимание 🙂

В основата му седи конвейера

ps ax | grep -v grep | grep process_name | awk '{print $1}')

Тука получаваме лист с всички PID-ове на процеса който трябва да килнем като изключваме grep от този списък. Вече като имаме списъка нещата стават лесни всичко се завърта в един for. Ето го и крайния резултат

#!/bin/bash

PR=$(ps ax | grep -v grep | grep process_name | awk '{print $1}')

for PID in $PR
do
echo "$PID will be killed"
kill -9 $PID
done

Може да сетунинговакато името се взима като аргумент след името на скрипта и по този начин се вика като изпълнимо binary. Обаче не е много добра практика да има много такива чести случаи 😀 Но никога не пречи да сме предпазени от всякакви шитни

Növeli Zemanta

Image representing MySQL as depicted in CrunchBase

Néhány évvel ezelőtt írtam MySQL teljes szöveges keresés 🙂 Ma már egy nagyon érdekes tapasztalat-val egy lekérdezés. Általában a lekérdezés eredményeit, hogy hiányzik egy másik táblában keres. Válasszon egy al osnovne és részben válassza ki hol az alkalmazás. Általában, a csontváz és

SELECT DISTINCT (
`field`
)
FROM `table1`
WHERE `someID` =44
AND `firsTextField` NOT
IN (

SELECT DISTINCT (
`secondTextField`
)
FROM `table2`
WHERE `otherID` =44
)

Általában, egy egyszerű kérés. Írtam, hogy a 30 S engedje őt, és megragadt a gép. Miután egy hosszú és türelmesen vár a részemről, vagy csak ~ 43 mp . Köpni a pontszám lol . Pfff bolondokháza. Adja meg a gép látszó CPU szabályosan megterhelt szinte üresjárati állapotban. Sokk és félelem. A lekérdezés futtatásával újra mindig ugyanazt az eredményt. WTF fasz. Futtassuk a lekérdezést, és mindent megmagyaráz én – a második pedig csak secondTextField teljes szöveges keresés Nincs index, és van egy szerény tálca körülbelül 35 k-vonal. Mit olvas – teljesszöveges keresési index nincs. Már most világos, a probléma valódi gyors

ALTER TABLE `links` ADD INDEX ( `linkUrlID` ) 

És a dolgok lekérdezésének helyek 0.0005 MP 😀

Legyen óvatos, hogyan tesz az indexek közülük függ a marginális ráta az alkalmazás.

p. s egész tévedtem a fenti helyzet nem csak azért, mert hiányzik az index, mert nem használja a teljes szöveges keresési módszer 😀

Növeli Zemanta