{"id":35687,"date":"2019-10-31T22:05:46","date_gmt":"2019-10-31T19:05:46","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux\/"},"modified":"2019-10-31T22:05:46","modified_gmt":"2019-10-31T19:05:46","slug":"kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux","title":{"rendered":"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Klasifikace dat je sama o sob\u011b zaj\u00edmav\u00e9 t\u00e9ma k v\u00fdzkumu. R\u00e1d shroma\u017e\u010fuji informace, kter\u00e9 se zdaj\u00ed b\u00fdt u\u017eite\u010dn\u00e9, a v\u017edy jsem se sna\u017eil vytv\u00e1\u0159et logick\u00e9 hierarchie adres\u00e1\u0159\u016f pro sv\u00e9 soubory. Jednou jsem ve snu vid\u011bl kr\u00e1sn\u00fd a pohodln\u00fd program na p\u0159i\u0159azov\u00e1n\u00ed tag\u016f soubor\u016fm a rozhodl jsem se, \u017ee takto \u017e\u00edt d\u00e1l nelze.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1 id=\"problema-ierarhicheskih-faylovyh-sistem\">Probl\u00e9m hierarchick\u00fdch souborov\u00fdch syst\u00e9m\u016f<\/h1>\n<p><\/p>\n<p>U\u017eivatel\u00e9 se \u010dasto pot\u00fdkaj\u00ed s probl\u00e9mem, kam ulo\u017eit pr\u00e1v\u011b nov\u00fd soubor, a s probl\u00e9mem hled\u00e1n\u00ed vlastn\u00edch soubor\u016f (n\u011bkdy n\u00e1zvy soubor\u016f nejsou ur\u010deny k zapamatov\u00e1n\u00ed \u010dlov\u011bkem).<\/p>\n<p><\/p>\n<p>\u0158e\u0161en\u00edm mohou b\u00fdt semantick\u00e9 souborov\u00e9 syst\u00e9my, kter\u00e9 obvykle funguj\u00ed jako nadstavba tradi\u010dn\u00edho souborov\u00e9ho syst\u00e9mu. V nich jsou adres\u00e1\u0159e nahrazeny semantick\u00fdmi atributy, tak\u00e9 naz\u00fdvan\u00fdmi tagy, kategoriemi, metadaty. \u010cast\u011bji budu pou\u017e\u00edvat term\u00edn \u201ekategorie\u201c, proto\u017ee v kontextu souborov\u00fdch syst\u00e9m\u016f slovo \u201etag\u201c ob\u010das zn\u00ed podivn\u011b, zejm\u00e9na kdy\u017e se objev\u00ed \u201epodtagy\u201c a \u201epseudonymy tag\u016f\u201c.<\/p>\n<p><\/p>\n<p>P\u0159i\u0159azen\u00ed kategori\u00ed soubor\u016fm do velk\u00e9 m\u00edry odstra\u0148uje probl\u00e9my s m\u00edstem ukl\u00e1d\u00e1n\u00ed a vyhled\u00e1v\u00e1n\u00edm soubor\u016f: pokud si pamatujete (nebo tu\u0161\u00edte) alespo\u0148 jednu z p\u0159i\u0159azen\u00fdch kategori\u00ed souboru, pak soubor u\u017e nikdy nezmiz\u00ed z dohledu.<\/p>\n<p><\/p>\n<p>Toto t\u00e9ma bylo ji\u017e d\u0159\u00edve diskutov\u00e1no na Habr\u00e9 (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/27581\/\">jedna<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/337202\/\">dva<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/374465\/\">t\u0159i<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/81352\/\">\u010dty\u0159i<\/a><\/noindex> atd.), zde popisuji sv\u00e9 \u0159e\u0161en\u00ed.<\/p>\n<p><\/p>\n<h1 id=\"put-k-realizacii\">Cesta k realizaci<\/h1>\n<p><\/p>\n<p>Ihned po zm\u00edn\u011bn\u00e9m snu jsem si do se\u0161itu napsal p\u0159\u00edkazov\u00e9 rozhran\u00ed, kter\u00e9 by zajistilo pot\u0159ebnou pr\u00e1ci s kategoriemi. Tehdy jsem si myslel, \u017ee za t\u00fdden nebo dva mohu napsat prototyp pomoc\u00ed Pythonu nebo Bash, a pak bude t\u0159eba vyvinout grafick\u00e9 rozhran\u00ed v Qt nebo GTK. Realita, jak u\u017e to b\u00fdv\u00e1, byla mnohem drsn\u011bj\u0161\u00ed, a v\u00fdvoj se prot\u00e1hl.<\/p>\n<p><\/p>\n<p>P\u016fvodn\u00ed my\u0161lenka spo\u010d\u00edvala p\u0159edev\u0161\u00edm v tom, vytvo\u0159it program s pohodln\u00fdm a stru\u010dn\u00fdm rozhran\u00edm p\u0159\u00edkazov\u00e9ho \u0159\u00e1dku, kter\u00fd by vytv\u00e1\u0159el, odstra\u0148oval kategorie, p\u0159i\u0159azoval kategorie soubor\u016fm a odstra\u0148oval kategorie z soubor\u016f. Program jsem nazval <em>vitis<\/em>.<\/p>\n<p><\/p>\n<p>Prvn\u00ed pokus vytvo\u0159it <em>vitis<\/em> skon\u010dilo ni\u010d\u00edm, proto\u017ee na pr\u00e1ci a institut za\u010dalo ub\u00fdvat hodn\u011b \u010dasu. Druh\u00fd pokus byl u\u017e n\u011b\u010d\u00edm: k magistersk\u00e9 pr\u00e1ci se poda\u0159ilo dokon\u010dit zam\u00fd\u0161len\u00fd projekt a dokonce vytvo\u0159it prototyp GTK rozhran\u00ed. Ale ta verze se uk\u00e1zala b\u00fdt natolik nespolehliv\u00e1 a nepohodln\u00e1, \u017ee bylo nutn\u00e9 mnoh\u00e9 p\u0159ehodnotit.<\/p>\n<p><\/p>\n<p>T\u0159et\u00ed verze jsem u\u017e opravdu pou\u017e\u00edval s\u00e1m velmi dlouhou dobu, rozd\u011blil jsem do kategori\u00ed n\u011bkolik tis\u00edc sv\u00fdch soubor\u016f. K tomu napomohlo i realizovan\u00e9 automatick\u00e9 dopl\u0148ov\u00e1n\u00ed bash. Ale n\u011bkter\u00e9 probl\u00e9my, jako chyb\u011bj\u00edc\u00ed automatick\u00e9 kategorie a mo\u017enost ukl\u00e1dat soubory se stejn\u00fdm n\u00e1zvem, p\u0159etrv\u00e1valy, a program u\u017e se hroutil pod vlastn\u00ed slo\u017eitost\u00ed. Tak jsem do\u0161el k pot\u0159eb\u011b \u0159e\u0161it probl\u00e9my v\u00fdvoje slo\u017eit\u00e9ho softwaru: napsat podrobn\u00e9 po\u017eadavky, vyvinout syst\u00e9m funk\u010dn\u00edho testov\u00e1n\u00ed, studovat pokyny pro balen\u00ed a mnoho dal\u0161\u00edho. Te\u010f u\u017e jsem dosp\u011bl k zam\u00fd\u0161len\u00e9mu, tak\u017ee toto skromn\u00e9 d\u00edlo m\u016f\u017ee b\u00fdt p\u0159edstaveno svobodn\u00e9mu spole\u010denstv\u00ed. Takov\u00e9 specifick\u00e9 \u0159\u00edzen\u00ed soubor\u016f, jako je \u0159\u00edzen\u00ed prost\u0159ednictv\u00edm konceptu kategori\u00ed, se dot\u00fdk\u00e1 ne\u010dekan\u00fdch ot\u00e1zek a probl\u00e9m\u016f, a v jejich \u0159e\u0161en\u00ed <em>vitis<\/em> vytvo\u0159ilo kolem sebe dal\u0161\u00edch p\u011bt projekt\u016f, z nich\u017e n\u011bkter\u00e9 budou v \u010dl\u00e1nku zm\u00edn\u011bny. Dodnes <em>vitis<\/em> nem\u00e1 grafick\u00e9 rozhran\u00ed, ale pohodl\u00ed pou\u017e\u00edv\u00e1n\u00ed kategori\u00ed soubor\u016f z p\u0159\u00edkazov\u00e9ho \u0159\u00e1dku pro m\u011b ji\u017e p\u0159eva\u017euje jak\u00e9koli v\u00fdhody b\u011b\u017en\u00e9ho grafick\u00e9ho spr\u00e1vce soubor\u016f.<\/p>\n<p><\/p>\n<h1 id=\"primery-ispolzovaniya\">P\u0159\u00edklady pou\u017eit\u00ed<\/h1>\n<p><\/p>\n<p>Za\u010dn\u011bme jednodu\u0161e \u2014 vytvo\u0159\u00edme kategorii:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis create Hudba<\/code><\/pre>\n<p><\/p>\n<p>P\u0159id\u00e1me do n\u00ed nap\u0159\u00edklad n\u011bjakou skladbu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Hudba -f \"The Ink Spots - I Don't Want To Set The World On Fire.mp3\"<\/code><\/pre>\n<p><\/p>\n<p>Obsah kategorie \u201eHudba\u201c lze zobrazit podp\u0159\u00edkazem \u201eshow\u201c:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis show Hudba<\/code><\/pre>\n<p><\/p>\n<p>M\u016f\u017eete jej p\u0159ehr\u00e1t pomoc\u00ed podp\u0159\u00edkazu \u201eopen\u201c<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis open Hudba<\/code><\/pre>\n<p><\/p>\n<p>Jeliko\u017e m\u00e1me v kategorii \u201eHudba\u201c jen jeden soubor, spust\u00ed se pouze ten. Pro \u00fa\u010dely otev\u00edr\u00e1n\u00ed soubor\u016f v aplikac\u00edch podle v\u00fdchoz\u00edho nastaven\u00ed jsem vytvo\u0159il samostatnou utilitu <em>vts-fs-open<\/em> (standardn\u00ed prost\u0159edky jako xdg-open nebo mimeopen mi z r\u016fzn\u00fdch d\u016fvod\u016f nevyhovovaly; ale pokud chcete, v nastaven\u00ed m\u016f\u017eete zadat jinou utilitu pro univerz\u00e1ln\u00ed otev\u00edr\u00e1n\u00ed soubor\u016f). Tato utilita funguje dob\u0159e na r\u016fzn\u00fdch distribuc\u00edch s r\u016fzn\u00fdmi desktopov\u00fdmi prost\u0159ed\u00edmi, proto doporu\u010duji nainstalovat ji spolu s vitis.<\/p>\n<p><\/p>\n<p>M\u016f\u017eete tak\u00e9 p\u0159\u00edmo ur\u010dit program pro otev\u0159en\u00ed soubor\u016f:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis open Hudba --app qmmp<\/code><\/pre>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux\" src=\"\/wp-content\/uploads\/2019\/06\/4823ff69e03b2e8b9986eedfe0604a9d.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Vytvo\u0159\u00edme dal\u0161\u00ed kategorie a p\u0159id\u00e1me soubory pomoc\u00ed \u201eassign\u201c. Pokud jsou soubory p\u0159i\u0159azov\u00e1ny neexistuj\u00edc\u00edm kategori\u00edm, zobraz\u00ed se v\u00fdzva k jejich vytvo\u0159en\u00ed. Nepot\u0159ebn\u00e9 v\u00fdzvy lze vyhnout pou\u017eit\u00edm p\u0159ep\u00edna\u010de \u2014yes.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Programov\u00e1n\u00ed R -f \"\u00davod do R.pdf\" \"Statistick\u00fd bal\u00edk R: teorie pravd\u011bpodobnosti a matstatistika.pdf\" --yes<\/code><\/pre>\n<p><\/p>\n<p>Nyn\u00ed chceme p\u0159idat souboru \u201eStatistick\u00fd bal\u00ed\u010dek R: teorie pravd\u011bpodobnosti a matematick\u00e1 statistika.pdf\u201c kategorii \u201eMatematika\u201c. V\u00edme, \u017ee tento soubor ji\u017e m\u00e1 kategorii \u201eR\u201c, a proto m\u016f\u017eeme pou\u017e\u00edt kategorijn\u00ed cestu z Vitis syst\u00e9mu:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Matematika -v \"R\/Statistick\u00fd bal\u00edk R: teorie pravd\u011bpodobnosti a matstatistika.pdf\"<\/code><\/pre>\n<p><\/p>\n<p>Na\u0161t\u011bst\u00ed n\u00e1m automatick\u00e9 dokon\u010dov\u00e1n\u00ed bash umo\u017en\u00ed to snadno ud\u011blat.<\/p>\n<p><\/p>\n<p>Pod\u00edvejme se, co se poda\u0159ilo, pomoc\u00ed p\u0159ep\u00edna\u010de \u2014categories, abychom vid\u011bli seznam kategori\u00ed u ka\u017ed\u00e9ho souboru:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis show R --categories<\/code><\/pre>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux\" src=\"\/wp-content\/uploads\/2019\/06\/7bbaf561e6efe407ec8dfcda3a89c3b8.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>V\u0161imn\u011bte si, \u017ee soubor\u016fm byly tak\u00e9 p\u0159id\u011bleny automatick\u00e9 kategorie podle form\u00e1tu, typu (slou\u010duje form\u00e1ty) a p\u0159\u00edpony soubor\u016f. Tyto kategorie lze na po\u017e\u00e1d\u00e1n\u00ed vypnout. Pozd\u011bji nutn\u011b provedu lokalizaci jejich n\u00e1zv\u016f.<\/p>\n<p><\/p>\n<p>P\u0159id\u00e1me pro rozmanitost do \u201eMatematiky\u201c je\u0161t\u011b n\u011bco:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Matematika -f \"Matematick\u00e1 anal\u00fdza - 1984.pdf\" Perelman_Z\u00e1bavn\u00e1_matematika_1927.djvu <\/code><\/pre>\n<p><\/p>\n<p>A te\u010f za\u010d\u00edn\u00e1 to zaj\u00edmav\u00e9. M\u00edsto kategori\u00ed lze ps\u00e1t v\u00fdrazy s operacemi sjednocen\u00ed, pr\u016fniku a od\u010d\u00edt\u00e1n\u00ed, tedy pou\u017e\u00edvat operace nad mno\u017einami. Nap\u0159\u00edklad pr\u016fnik \u201eMatematiky\u201c s \u201eR\u201c d\u00e1 nakonec jeden soubor.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis show R i: Matematika<\/code><\/pre>\n<p><\/p>\n<p>Od\u010d\u00edt\u00e1me z \u201eMatematiky\u201c zm\u00ednky o jazyce \u201eR\u201c:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis show Matematika R #nebo vitis show Matematika c: R<\/code><\/pre>\n<p><\/p>\n<p>M\u016f\u017eeme bezc\u00edln\u011b spojit hudbu a jazyk R:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis show Hudba u: R<\/code><\/pre>\n<p><\/p>\n<p>P\u0159ep\u00edna\u010d -n umo\u017e\u0148uje \u201evytahovat\u201c z v\u00fdsledku dotazu po\u017eadovan\u00e9 soubory podle \u010d\u00edsel a\/nebo rozsah\u016f, nap\u0159\u00edklad, <code>-n 3-7<\/code>, nebo n\u011bco slo\u017eit\u011bj\u0161\u00edho: <code>-n 1,5,8-10,13<\/code>. \u010casto je u\u017eite\u010dn\u00e9 to s podp\u0159\u00edkazem open, co\u017e umo\u017e\u0148uje otv\u00edrat po\u017eadovan\u00e9 soubory ze seznamu.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux\" src=\"\/wp-content\/uploads\/2019\/06\/5e9181a711a88368b38d8cd2f2e628f4.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>I kdy\u017e se vzdalujeme od pou\u017e\u00edv\u00e1n\u00ed b\u011b\u017en\u00e9 hierarchie adres\u00e1\u0159\u016f, \u010dasto je u\u017eite\u010dn\u00e9 m\u00edt podkategorie. Vytvo\u0159\u00edme podkategorii \u201eStatistika\u201c v kategorii \u201eMatematika\u201c a p\u0159id\u00e1me tuto kategorii p\u0159\u00edslu\u0161n\u00e9mu souboru:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis create Matematika\/Statisitka\n\nvitis assign Matematika\/Statisitka -v \"R\/\u00davod do R.pdf\"\n\nvitis show Matematika --categories<\/code><\/pre>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux\" src=\"\/wp-content\/uploads\/2019\/06\/0bb3381f35cfa2fce381ecc66a62701f.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>M\u016f\u017eeme vid\u011bt, \u017ee tento soubor nyn\u00ed m\u00e1 kategorii \u201eMatematika\/Statistika\u201c m\u00edsto \u201eMatematika\u201c (zbyte\u010dn\u00e9 odkazy jsou sledov\u00e1ny).<\/p>\n<p><\/p>\n<p>Oslovovat cel\u00fd cestu m\u016f\u017ee b\u00fdt nepohodln\u00e9, vytvo\u0159me \u201eglob\u00e1ln\u00ed\u201c alias:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Matematika\/Statisitka -a Statistika\n\nvitis show Statistika<\/code><\/pre>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux\" src=\"\/wp-content\/uploads\/2019\/06\/619c27802802fd93594d3c0050dd78e8.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h2 id=\"ne-tolko-obychnye-fayly\">Nejen b\u011b\u017en\u00e9 soubory<\/h2>\n<p><\/p>\n<h3 id=\"internet-ssylki\">Internetov\u00e9 odkazy<\/h3>\n<p><\/p>\n<p>Pro zjednodu\u0161en\u00ed uchov\u00e1v\u00e1n\u00ed jak\u00fdchkoli informac\u00ed by bylo u\u017eite\u010dn\u00e9 alespo\u0148 kategorizovat odkazy na internetov\u00e9 zdroje. A to je mo\u017en\u00e9:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Habr Barevn\u00e1 anom\u00e1lie -i https:\/\/habr.com\/ru\/company\/sfe_ru\/blog\/437304\/ --yes<\/code><\/pre>\n<p><\/p>\n<p>Na speci\u00e1ln\u00edm m\u00edst\u011b bude vytvo\u0159en soubor s nadpisem HTML str\u00e1nky a s p\u0159\u00edponou .desktop. To je tradi\u010dn\u00ed form\u00e1t z\u00e1stupce v GNU\/Linux. Takov\u00e9 z\u00e1stupce z\u00edsk\u00e1vaj\u00ed automatickou kategorii NetworkBookmarks.<\/p>\n<p><\/p>\n<p>Jasn\u011b, z\u00e1stupce se vytv\u00e1\u0159ej\u00ed, aby se pou\u017e\u00edvaly:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis open Barevn\u00e1 anom\u00e1lie<\/code><\/pre>\n<p><\/p>\n<p>Prov\u00e1d\u011bn\u00ed p\u0159\u00edkazu vede k otev\u0159en\u00ed v prohl\u00ed\u017ee\u010di pr\u00e1v\u011b ulo\u017een\u00e9ho odkazu. Kategorizovan\u00e9 z\u00e1stupce na internetov\u00e9 zdroje mohou slou\u017eit jako n\u00e1hrada za z\u00e1lo\u017eky v prohl\u00ed\u017ee\u010di.<\/p>\n<p><\/p>\n<h3 id=\"fragmenty-faylov\">\u00daryvky soubor\u016f<\/h3>\n<p><\/p>\n<p>Je tak\u00e9 u\u017eite\u010dn\u00e9 m\u00edt kategorie pro jednotliv\u00e9 \u010d\u00e1sti soubor\u016f. Nen\u00ed to \u0161patn\u00fd po\u017eadavek, co \u0159\u00edk\u00e1te? Aktu\u00e1ln\u00ed implementace v\u0161ak zat\u00edm zasahuje pouze do b\u011b\u017en\u00fdch textov\u00fdch soubor\u016f, audio- a video soubor\u016f. Dejme tomu, \u017ee pot\u0159ebujete ozna\u010dit konkr\u00e9tn\u00ed kus n\u011bjak\u00e9ho koncertu nebo vtipn\u00fd moment ve filmu, pak p\u0159i pou\u017eit\u00ed p\u0159\u00edkazu assign m\u016f\u017eete vyu\u017e\u00edt p\u0159\u00edznaky \u2014fragname, \u2014start, \u2014finish. Ulo\u017e\u00edme \u00favodn\u00ed zn\u011blku z \u201eKa\u010de\u0159\u00edch p\u0159\u00edb\u011bh\u016f\u201c:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign vitis assign -c \u00davodn\u00ed sekvence -f Duck_Tales\/s01s01.avi --finish 00:00:59 --fragname \"\u00davod Kachn\u00edch p\u0159\u00edb\u011bh\u016f\"\n\nvitis open \u00davodn\u00ed sekvence<\/code><\/pre>\n<p><\/p>\n<p>Ve skute\u010dnosti k \u017e\u00e1dn\u00e9mu o\u0159ez\u00e1v\u00e1n\u00ed soubor\u016f nedoch\u00e1z\u00ed, m\u00edsto toho se vytv\u00e1\u0159\u00ed ukazatelov\u00fd soubor na fragment, ve kter\u00e9m je pops\u00e1n typ souboru, cesta k souboru, za\u010d\u00e1tek a konec fragmentu. Vytv\u00e1\u0159en\u00ed a otev\u00edr\u00e1n\u00ed ukazatel\u016f na fragmenty se deleguje na utilitky, kter\u00e9 jsem pro tyto \u00fa\u010dely speci\u00e1ln\u011b vytvo\u0159il \u2014 jsou to mediafragmenter a fragplayer. Prvn\u00ed vytv\u00e1\u0159\u00ed, druh\u00e1 otev\u00edr\u00e1. V p\u0159\u00edpad\u011b audio- a videoz\u00e1znam\u016f spou\u0161t\u011bn\u00ed medi\u00e1ln\u00edho souboru od ur\u010dit\u00e9 pozice do ur\u010dit\u00e9 pozice prob\u00edh\u00e1 pomoc\u00ed p\u0159ehr\u00e1va\u010de VLC, tak\u017ee ten mus\u00ed b\u00fdt tak\u00e9 v syst\u00e9mu. Zpo\u010d\u00e1tku jsem to cht\u011bl ud\u011blat na z\u00e1klad\u011b mplayer'a, ale tam n\u011bjak byl velmi \u0161patn\u00fd probl\u00e9m s pozicov\u00e1n\u00edm v pot\u0159ebn\u00e9m moment\u011b.<br \/>\nV na\u0161em p\u0159\u00edkladu se vytv\u00e1\u0159\u00ed soubor \u201eDuck Tales intro.fragpointer\u201c (ten je um\u00edst\u011bn na zvl\u00e1\u0161tn\u00edm m\u00edst\u011b), a pot\u00e9 se reprodukuje fragment od za\u010d\u00e1tku souboru (proto\u017ee \u2014start nebyl uveden p\u0159i vytv\u00e1\u0159en\u00ed) a\u017e k ozna\u010den\u00ed na 59 sekund, po \u010dem\u017e VLC kon\u010d\u00ed.<\/p>\n<p><\/p>\n<p>Jin\u00fd p\u0159\u00edklad \u2014 rozhodli jsme se kategorizovat jednotliv\u00e9 vystoupen\u00ed na koncertu n\u011bjak\u00e9ho zn\u00e1m\u00e9ho um\u011blce:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis assign Lep\u0161 \"Spasite na\u0161e du\u0161e\" -f Grigorij Lepc - Koncert P\u00e1rus - p\u00edsn\u011b Vladimira Vysock\u00e9ho.mp4 --fragname \"Spasite na\u0161e du\u0161e\" --start 00:32:18 --finish 00:36:51\n\nvitis open \"Spasite na\u0161e du\u0161e\"<\/code><\/pre>\n<p><\/p>\n<p>P\u0159i otev\u0159en\u00ed bude soubor zahrnut na spr\u00e1vn\u00e9 pozici a po \u010dty\u0159ech a p\u016fl minut\u00e1ch se zav\u0159e.<\/p>\n<p><\/p>\n<h1 id=\"kak-eto-vsyo-rabotaet--dopolnitelnye-vozmozhnosti\">Jak to v\u0161echno funguje + dal\u0161\u00ed mo\u017enosti<\/h1>\n<p><\/p>\n<h2 id=\"hranenie-kategoriy\">Ukl\u00e1d\u00e1n\u00ed kategori\u00ed<\/h2>\n<p><\/p>\n<p>Na za\u010d\u00e1tku pl\u00e1nov\u00e1n\u00ed organizace s\u00e9mantick\u00e9ho souborov\u00e9ho syst\u00e9mu m\u011b napadly t\u0159i zp\u016fsoby: skrze uchov\u00e1v\u00e1n\u00ed symbolick\u00fdch odkaz\u016f, pomoc\u00ed datab\u00e1ze, a popisem v XML. Prvn\u00ed zp\u016fsob zv\u00edt\u011bzil, proto\u017ee je na jedn\u00e9 stran\u011b jednoduch\u00fd na realizaci, a na druh\u00e9 stran\u011b u\u017eivatel m\u00e1 mo\u017enost vid\u011bt kategorie p\u0159\u00edmo z souborov\u00e9ho syst\u00e9mu (co\u017e je pohodln\u00e9 a d\u016fle\u017eit\u00e9). Na za\u010d\u00e1tku pou\u017e\u00edv\u00e1n\u00ed <em>vitis<\/em> Ve vlastn\u00ed u\u017eivatelsk\u00e9 slo\u017ece se vytv\u00e1\u0159\u00ed slo\u017eka \u201eVitis\u201c a konfigura\u010dn\u00ed soubor \u201e.config\/vitis\/vitis.conf\u201c. V ~\/Vitis se vytv\u00e1\u0159ej\u00ed slo\u017eky odpov\u00eddaj\u00edc\u00ed kategori\u00edm a v t\u011bchto kategorijn\u00edch slo\u017ek\u00e1ch se vytv\u00e1\u0159ej\u00ed symbolick\u00e9 odkazy na origin\u00e1ln\u00ed soubory. Alias kategorie jsou tak\u00e9 prost\u011b odkazy na n\u011b. Samoz\u0159ejm\u011b, \u017ee p\u0159\u00edtomnost slo\u017eky \u201eVitis\u201c v dom\u00e1c\u00edm adres\u00e1\u0159i m\u016f\u017ee n\u011bkoho roz\u010dilovat. M\u016f\u017eeme p\u0159epnout na jak\u00e9koli jin\u00e9 m\u00edsto:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis service set path \/mnt\/MyFavoriteDisk\/Vitis\/<\/code><\/pre>\n<p><\/p>\n<p>V ur\u010dit\u00e9m okam\u017eiku se ukazuje, \u017ee rozt\u0159\u00ed\u0161t\u011bn\u00e9 soubory na r\u016fzn\u00fdch m\u00edstech maj\u00ed m\u00e1lo smyslu pro kategorizaci, proto\u017ee jejich um\u00edst\u011bn\u00ed se m\u016f\u017ee m\u011bnit. Proto jsem si zpo\u010d\u00e1tku vytvo\u0159il slo\u017eku, kam jsem jednodu\u0161e ukl\u00e1dal v\u0161echno a d\u00e1val tomu v\u0161emu kategorie. Pak jsem se rozhodl, \u017ee by nebylo \u0161patn\u00e9 tento moment upravit na programov\u00e9 \u00farovni. Tak se objevila my\u0161lenka \u201esoubov\u00e9ho prostoru\u201c. Na za\u010d\u00e1tku pou\u017e\u00edv\u00e1n\u00ed. <em>vitis<\/em> hned nebylo na \u0161kodu nastavit takov\u00e9 m\u00edsto (tam budou ukl\u00e1d\u00e1ny v\u0161echny pot\u0159ebn\u00e9 soubory) a zapnout automatick\u00e9 ukl\u00e1d\u00e1n\u00ed:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis service add filespace \/mnt\/MyFavoriteDisk\/Filespace\/\n\nvitis service set autosave yes<\/code><\/pre>\n<p><\/p>\n<p>Bez automatick\u00e9ho ukl\u00e1d\u00e1n\u00ed p\u0159i pou\u017eit\u00ed podp\u0159\u00edkazu &#171;assign&#187; bude vy\u017eadov\u00e1na volba &#8212;save, pokud bude nutn\u00e9 ulo\u017eit p\u0159idan\u00fd soubor do souborov\u00e9ho prostoru.<\/p>\n<p><\/p>\n<p>Krom\u011b toho lze p\u0159idat n\u011bkolik souborov\u00fdch prostor\u016f a m\u011bnit jejich priority, co\u017e m\u016f\u017ee b\u00fdt u\u017eite\u010dn\u00e9, kdy\u017e je soubor\u016f velmi mnoho a jsou ulo\u017eeny na r\u016fzn\u00fdch nosi\u010d\u00edch. Tuto mo\u017enost zde nebudu zpracov\u00e1vat, podrobnosti si m\u016f\u017eete p\u0159e\u010d\u00edst v n\u00e1pov\u011bd\u011b programu.<\/p>\n<p><\/p>\n<h2 id=\"migraciya-semanticheskoy-faylovoy-sistemy\">Migrace semantick\u00e9ho souborov\u00e9ho syst\u00e9mu<\/h2>\n<p><\/p>\n<p>A\u0165 u\u017e tak \u010di onak, adres\u00e1\u0159 Vitis a souborov\u00e9 prostory mohou teoreticky ob\u010das m\u011bnit m\u00edsto. Abych je uvedl do funk\u010dn\u00edho stavu, vytvo\u0159il jsem samostatnou utilitu <em>link-editor<\/em>, kter\u00e1 m\u016f\u017ee masov\u011b upravovat odkazy, nahrazuj\u00edc\u00ed \u010d\u00e1sti cest jin\u00fdmi:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">cp -r \/mnt\/MyFavoriteDisk\/Vitis\/ ~\/Vitis\nlink-editor -d ~\/Vitis\/ -f \/mnt\/MyFavoriteDisk\/Vitis\/ -r ~\/Vitis\/ -R\ncp -r \/mnt\/MyFavoriteDisk\/Filespace\/ ~\/MyFiles\nlink-editor -d ~\/Vitis\/ -f \/mnt\/FlashDrive-256\/Filespace\/ -r ~\/MyFiles -R<\/code><\/pre>\n<p><\/p>\n<p>V prvn\u00edm p\u0159\u00edpad\u011b, kdy\u017e jsme se p\u0159esunuli z \/mnt\/MyFavoriteDisk\/Vitis\/ do dom\u00e1c\u00edho adres\u00e1\u0159e, se upravuj\u00ed symbolick\u00e9 odkazy spojen\u00e9 s aliasy. Ve druh\u00e9m p\u0159\u00edpad\u011b, po zm\u011bn\u011b um\u00edst\u011bn\u00ed souborov\u00e9ho prostoru, se m\u011bn\u00ed v\u0161echny odkazy ve Vitis na nov\u00e9 podle \u017e\u00e1dosti o v\u00fdm\u011bnu \u010d\u00e1sti jejich cesty.<\/p>\n<p><\/p>\n<h2 id=\"avtomaticheskie-kategorii\">Automatick\u00e9 kategorie<\/h2>\n<p><\/p>\n<p>Pokud spust\u00edte p\u0159\u00edkaz <code>vitis service get autocategorization<\/code>, m\u016f\u017eete vid\u011bt, \u017ee je ve v\u00fdchoz\u00edm nastaven\u00ed nastavena automatick\u00e1 kategorizace podle form\u00e1tu (Format a Type) a p\u0159\u00edpony soubor\u016f (Extension).<\/p>\n<p><\/p>\n<p>To je u\u017eite\u010dn\u00e9, kdy\u017e pot\u0159ebujete nap\u0159\u00edklad n\u011bco naj\u00edt mezi PDF dokumenty nebo zkontrolovat, co m\u00e1te ulo\u017eeno ve form\u00e1tech EPUB a FB2, m\u016f\u017eete jednodu\u0161e prov\u00e9st dotaz<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">vitis show Format\/MOBI u: Format\/FB2<\/code><\/pre>\n<p><\/p>\n<p>Stalo se tak, \u017ee standardn\u00ed n\u00e1stroje GNU\/Linux, jako jsou file nebo mimetype, m\u011b neuspokojily, proto\u017ee ne v\u017edy spr\u00e1vn\u011b ur\u010dily form\u00e1t. Musel jsem vyvinout vlastn\u00ed implementaci na z\u00e1klad\u011b signatur soubor\u016f a p\u0159\u00edpon. T\u00e9ma ur\u010den\u00ed form\u00e1t\u016f soubor\u016f je vlastn\u011b zaj\u00edmav\u00e9 a zaslou\u017e\u00ed si samostatn\u00fd \u010dl\u00e1nek. Mohu \u0159\u00edct, \u017ee mo\u017en\u00e1 ne pro v\u0161echny form\u00e1ty sv\u011bta jsem zajistil spolehliv\u00e9 rozpozn\u00e1v\u00e1n\u00ed, ale celkov\u011b u\u017e nyn\u00ed to funguje docela dob\u0159e. Vzhledem k tomu, \u017ee form\u00e1t EPUB je nyn\u00ed ur\u010den jako ZIP (co\u017e je do ur\u010dit\u00e9 m\u00edry opr\u00e1vn\u011bn\u00e9, ale v praxi to nelze pova\u017eovat za norm\u00e1ln\u00ed chov\u00e1n\u00ed), zat\u00edm tuto funkci pova\u017eujte za experiment\u00e1ln\u00ed a hlaste chyby. V podivn\u00fdch situac\u00edch je v\u017edy mo\u017en\u00e9 vyu\u017e\u00edt kategorie podle p\u0159\u00edpon soubor\u016f, nap\u0159\u00edklad Extension\/epub.<\/p>\n<p><\/p>\n<p>Pokud jsou zapnut\u00e9 automatick\u00e9 kategorie podle form\u00e1tu, jsou tak\u00e9 zahrnuty automatick\u00e9 kategorie sdru\u017euj\u00edc\u00ed n\u011bkter\u00e9 form\u00e1ty, jako jsou: &#171;Archives&#187;, &#171;Pictures&#187;, &#171;Video&#187;, &#171;Audio&#187; a &#171;Documents&#187;. Pro tyto podkategorie budou tak\u00e9 vytvo\u0159ena lokalizovan\u00e1 jm\u00e9na.<\/p>\n<p><\/p>\n<h1 id=\"o-chyom-ne-skazano\">O \u010dem se nemluv\u00ed<\/h1>\n<p><\/p>\n<p><em>vitis<\/em> stal se velmi univerz\u00e1ln\u00edm n\u00e1strojem a t\u011b\u017eko to v\u0161echno pokr\u00fdt najednou. Kr\u00e1tce zm\u00edn\u00edm, co je\u0161t\u011b lze d\u011blat:<\/p>\n<p><\/p>\n<ul>\n<li>kategorie lze odstra\u0148ovat a odstra\u0148ovat je od soubor\u016f;<\/li>\n<li>v\u00fdsledky dotaz\u016f podle v\u00fdraz\u016f lze kop\u00edrovat do zadan\u00e9ho adres\u00e1\u0159e;<\/li>\n<li>soubory lze spou\u0161t\u011bt jako programy;<\/li>\n<li>p\u0159\u00edkaz show m\u00e1 mnoho voleb, nap\u0159\u00edklad t\u0159\u00edd\u011bn\u00ed podle jm\u00e9na\/data zm\u011bny nebo p\u0159\u00edstupu\/velikosti\/p\u0159\u00edpony, zobrazen\u00ed vlastnost\u00ed soubor\u016f a cest k origin\u00e1l\u016fm, zahrnut\u00ed zobrazen\u00ed skryt\u00fdch soubor\u016f a dal\u0161\u00ed;<\/li>\n<li>p\u0159i ukl\u00e1d\u00e1n\u00ed odkaz\u016f na internetov\u00e9 zdroje lze tak\u00e9 ukl\u00e1dat m\u00edstn\u00ed kopie HTML str\u00e1nek.<\/li>\n<\/ul>\n<p><\/p>\n<p>V\u0161echny podrobnosti lze naj\u00edt v u\u017eivatelsk\u00e9 p\u0159\u00edru\u010dce.<\/p>\n<p><\/p>\n<h1 id=\"perspektivy\">Vyhl\u00eddky<\/h1>\n<p><\/p>\n<p>\u010casto skeptici \u0159\u00edkaj\u00ed, \u017ee &#171;nikdo tyto tagy s\u00e1m nevejde&#187;. Na sv\u00e9m p\u0159\u00edkladu mohu dok\u00e1zat opak: u\u017e jsem kategorizoval v\u00edce ne\u017e \u0161est tis\u00edc soubor\u016f, vytvo\u0159il v\u00edce ne\u017e tis\u00edc kategori\u00ed a p\u0159ezd\u00edvek, a st\u00e1lo to za to. Kdy\u017e jedn\u00edm p\u0159\u00edkazem <code>vitis open Pl\u00e1n<\/code> otev\u0159ete seznam sv\u00fdch \u00fakol\u016f, nebo kdy\u017e jedn\u00edm p\u0159\u00edkazem <code>vitis open LaTeX<\/code> otev\u0159e\u0161 knihu Stolyarova o syst\u00e9mu zpracov\u00e1n\u00ed LaTeX, je u\u017e psychicky t\u011b\u017ek\u00e9 pou\u017e\u00edvat souborov\u00fd syst\u00e9m &#171;po staru&#187;.<\/p>\n<p><\/p>\n<p>Na tomto z\u00e1klad\u011b se rod\u00ed \u0159ada n\u00e1pad\u016f. Nap\u0159\u00edklad, lze vytvo\u0159it automatick\u00e9 r\u00e1dio, kter\u00e9 p\u0159ehr\u00e1v\u00e1 tematickou hudbu podle aktu\u00e1ln\u00edho po\u010das\u00ed, sv\u00e1tku, dne v t\u00fddnu, denn\u00ed doby nebo ro\u010dn\u00edho obdob\u00ed. Dal\u0161\u00ed bl\u00edzko t\u00e9matu je hudebn\u00ed p\u0159ehr\u00e1va\u010d, kter\u00fd v\u00ed o kategori\u00edch a m\u016f\u017ee p\u0159ehr\u00e1vat hudbu podle v\u00fdrazu s operacemi nad kategoriemi jako nad mno\u017einami. Bylo by u\u017eite\u010dn\u00e9 vytvo\u0159it d\u00e9mona, kter\u00fd bude sledovat adres\u00e1\u0159 &#171;Downloads&#187; a bude nab\u00edzet kategorizaci nov\u00fdch soubor\u016f. A samoz\u0159ejm\u011b by bylo dobr\u00e9 vytvo\u0159it norm\u00e1ln\u00ed grafick\u00fd s\u00e9mantick\u00fd spr\u00e1vce soubor\u016f. N\u011bkdy jsem dokonce pro podnik vytv\u00e1\u0159el webovou slu\u017ebu pro sd\u00edlen\u00ed soubor\u016f, ale nebylo to prioritn\u00ed a stalo se to neaktu\u00e1ln\u00edm, a\u010dkoliv dos\u00e1hlo vysok\u00e9 \u00farovn\u011b funk\u010dnosti. (V souvislosti s velk\u00fdmi zm\u011bnami v samotn\u00e9m <em>vitis<\/em>, u\u017e nen\u00ed pou\u017eiteln\u00fd.)<\/p>\n<p>\n<b class=\"spoiler_title\">zde mal\u00e1 uk\u00e1zka<\/b><\/p>\n<p><img decoding=\"async\" alt=\"Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo S\u00e9mantick\u00fd souborov\u00fd syst\u00e9m pro Linux\" src=\"\/wp-content\/uploads\/2019\/06\/0a8e3829424135a6bf9390d2b2654499.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h1 id=\"zaklyuchenie\">Z\u00e1v\u011br<\/h1>\n<p><\/p>\n<p><em>Vitis<\/em> \u2014 nen\u00ed to prvn\u00ed pokus radik\u00e1ln\u011b zm\u011bnit styl pr\u00e1ce s daty, ale pova\u017eoval jsem za d\u016fle\u017eit\u00e9 realizovat sv\u00e9 n\u00e1pady a zve\u0159ejnit implementaci pod licenc\u00ed GNU GPL. Pro pohodl\u00ed byl vytvo\u0159en deb bal\u00ed\u010dek pro x86-64, m\u011bl by fungovat na v\u0161ech modern\u00edch Debian distribuc\u00edch. Na ARM se objevily drobn\u00e9 komplikace (p\u0159itom v\u0161echny ostatn\u00ed programy souvisej\u00edc\u00ed s <em>vitis<\/em>, funguj\u00ed norm\u00e1ln\u011b), ale v budoucnu bude pro tuto platformu (armhf) sestaven funk\u010dn\u00ed bal\u00ed\u010dek. Vytv\u00e1\u0159en\u00edm RPM bal\u00ed\u010dk\u016f jsem zat\u00edm p\u0159estal zab\u00fdvat kv\u016fli probl\u00e9m\u016fm s Fedora 30 a komplikovanosti rozpt\u00fdlit se na mnoho RPM distribuc\u00ed, ale pozd\u011bji se i tak pro p\u00e1r z nich bal\u00ed\u010dky vytvo\u0159\u00ed. A zat\u00edm m\u016f\u017eete pou\u017e\u00edvat <code>make &amp;&amp; make install<\/code> nebo <code>checkinstall<\/code>.<\/p>\n<p><\/p>\n<p>V\u0161em d\u011bkuji za pozornost! Douf\u00e1m, \u017ee tento \u010dl\u00e1nek a tento projekt budou u\u017eite\u010dn\u00e9.<\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/tech.vindex\/vitis\">Odkaz na repozit\u00e1\u0159 projektu<\/a><\/noindex><\/p>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/457328\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0430\u043c\u0430 \u043f\u043e \u0441\u0435\u0431\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430\u044f \u0442\u0435\u043c\u0430 \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439. \u042f \u043b\u044e\u0431\u043b\u044e \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u043a\u0430\u0436\u0443\u0449\u0443\u044e\u0441\u044f \u043d\u0443\u0436\u043d\u043e\u0439, \u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u044b\u0442\u0430\u043b\u0441\u044f \u0434\u0435\u043b\u0430\u0442\u044c \u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0438 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439 \u0434\u043b\u044f \u0441\u0432\u043e\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432, \u0438 \u043e\u0434\u043d\u0430\u0436\u0434\u044b \u0432\u043e \u0441\u043d\u0435 \u044f \u0443\u0432\u0438\u0434\u0435\u043b \u043a\u0440\u0430\u0441\u0438\u0432\u0443\u044e \u0438 \u0443\u0434\u043e\u0431\u043d\u0443\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0434\u043b\u044f \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0442\u044d\u0433\u043e\u0432 \u0444\u0430\u0439\u043b\u0430\u043c, \u0438 \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u0434\u0430\u043b\u044c\u0448\u0435 \u0442\u0430\u043a \u0436\u0438\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f. \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0438\u0435\u0440\u0430\u0440\u0445\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0447\u0430\u0441\u0442\u043e \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26733,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35687","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0430\u043c\u0430 \u043f\u043e \u0441\u0435\u0431\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430\u044f \u0442\u0435\u043c\u0430 \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439, \u0438\u043b\u0438 \u0421\u0435\u043c\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u043b\u044f Linux | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0430\u043c\u0430 \u043f\u043e \u0441\u0435\u0431\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430\u044f \u0442\u0435\u043c\u0430 \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:05:46+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:05:46+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Kategorie m\u00edsto adres\u00e1\u0159\u016f, nebo Semantick\u00fd souborov\u00fd syst\u00e9m pro Linux | ProHoster","description":"Klasifikace dat je sama o sob\u011b zaj\u00edmav\u00e9 t\u00e9ma k v\u00fdzkumu.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0439, \u0438\u043b\u0438 \u0421\u0435\u043c\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u043b\u044f Linux | ProHoster","og:description":"\u041a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0430\u043c\u0430 \u043f\u043e \u0441\u0435\u0431\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430\u044f \u0442\u0435\u043c\u0430 \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kategorii-vmesto-direktorij-ili-semanticheskaya-fajlovaya-sistema-dlya-linux","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:05:46+00:00","article:modified_time":"2019-10-31T19:05:46+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35687","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 00:23:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:57:46","updated":"2026-01-22 00:23:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/35687","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=35687"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/35687\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/26733"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=35687"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=35687"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=35687"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}