{"id":173,"date":"2021-05-09T14:31:13","date_gmt":"2021-05-09T12:31:13","guid":{"rendered":"https:\/\/workerbase.org\/wordpress\/?p=173"},"modified":"2021-11-20T15:54:23","modified_gmt":"2021-11-20T14:54:23","slug":"files-in-unix-parte-3","status":"publish","type":"post","link":"https:\/\/arkenidar.com\/wordpress\/2021\/05\/09\/files-in-unix-parte-3\/","title":{"rendered":"Files in Unix parte 3"},"content":{"rendered":"\n<p>BASH e i files: la <strong>directory corrente<\/strong> e il percorso per riferirsi a un file.<\/p>\n\n\n\n<p>I comandi (<em>commands<\/em>) menzionati negli articoli precedenti di questa serie (cp, mv, rm, mkdir) vengono eseguiti tipicamente all&#8217;interno di un&#8217;interfaccia testuale (ad esempio KDE\/Konsole con shell GNU Bash).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"587\" height=\"383\" src=\"https:\/\/workerbase.org\/wordpress\/wp-content\/uploads\/2021\/05\/image.png\" alt=\"\" class=\"wp-image-179\" srcset=\"https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image.png 587w, https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-300x196.png 300w\" sizes=\"auto, (max-width: 587px) 100vw, 587px\" \/><\/figure>\n\n\n\n<p>Di BASH ne \u00e8 ho parlato poco ma la menziono perch\u00e8 \u00e8 questa che ci fornisce il concetto di &#8220;directory corrente&#8221; (del processo in esecuzione). Questa directory corrente \u00e8 usata dai processi che vengono creati quando un comando viene messo in esecuzione (ad esempio digitato non parte, dando il tasto di nuovo rigo il comando parte mediante l&#8217;interpretazione del rigo di comando da parte di BASH, che \u00e8 anche un processo genitore e il comando dato \u00e8 un processo figlio creato dal genitore, gerarchicamente).<\/p>\n\n\n\n<p>Quindi&#8230; Se la directory corrente \u00e8 la mia &#8220;<em>home directory<\/em>&#8221; (utente arkenidar quindi \/home\/arkenidar), se io creo un nuovo file vuoto con il comando <strong>touch<\/strong> cos\u00ec <strong>touch<\/strong> nomefile.txt il risultato \u00e8 che viene fuori un file con questo nome completo: \/home\/arkenidar\/nomefile.txt<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"587\" height=\"383\" src=\"https:\/\/workerbase.org\/wordpress\/wp-content\/uploads\/2021\/05\/image-1.png\" alt=\"\" class=\"wp-image-181\" srcset=\"https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-1.png 587w, https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-1-300x196.png 300w\" sizes=\"auto, (max-width: 587px) 100vw, 587px\" \/><\/figure>\n\n\n\n<p>Questo vale anche per tutti i comandi usati da shell BASH. Ad esempio: <strong>rm<\/strong> nomefile.txt rimuove il file cos\u00ec chiamato cercandolo nella directory <em>corrente<\/em>.<\/p>\n\n\n\n<p>Se io faccio adesso rm percorso\/nomefile.txt cercher\u00e0 il file all&#8217;interno della directory <em>percorso<\/em>.<\/p>\n\n\n\n<p>Esistono anche dei riferimenti particolari in BASH e in Unix in genere: . (punto) e .. (punto punto).<\/p>\n\n\n\n<p>Lo spiego in pratica: al punto singolo viene sostituito il nome della directory corrente (ad esempio la directory home, ma con <strong>cd<\/strong> si fa un cambio directory).<\/p>\n\n\n\n<p><strong>cd<\/strong> nomedirectory far\u00e0 entrare nella sotto-directory nominata, mentre cd .. far\u00e0 entrare nella directory appena superiore alla directory corrente, superiore di un livello, rendendo la directory superiore la directory corrente (quella immediatamente superiore, ma se ci fossero pi\u00f9 directory superiori si pu\u00f2 usare ancora il .. con ad esempio <strong>..\/..<\/strong> che indica sopra di due livelli).<\/p>\n\n\n\n<p>Questo forma il <strong>percorso di un file<\/strong>. Ad esempio a partire dalla directory radice (directory \/) \/home\/arkenidar o a partire dalla directory corrente \/home\/arkenidar\/sottodirectory: <strong>cd<\/strong> ..\/sottodirectory2 (che diventa quindi \/home\/arkenidar\/sottodirectory2).<\/p>\n\n\n\n<p><strong>NOTA<\/strong>: Vedendoli in azione questa spiegazione testuale pu\u00f2 divenire pi\u00f9 decodificabile. Scusate se non fornisco immagini o video in questo momento.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"files-in-unix-parte-3\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/kMyvvS1BCfY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"587\" height=\"383\" src=\"https:\/\/workerbase.org\/wordpress\/wp-content\/uploads\/2021\/05\/image-2.png\" alt=\"\" class=\"wp-image-183\" srcset=\"https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-2.png 587w, https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-2-300x196.png 300w\" sizes=\"auto, (max-width: 587px) 100vw, 587px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"667\" height=\"492\" src=\"https:\/\/workerbase.org\/wordpress\/wp-content\/uploads\/2021\/05\/image-3.png\" alt=\"\" class=\"wp-image-186\" srcset=\"https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-3.png 667w, https:\/\/arkenidar.com\/wordpress\/wp-content\/uploads\/2021\/05\/image-3-300x221.png 300w\" sizes=\"auto, (max-width: 667px) 100vw, 667px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>BASH e i files: la directory corrente e il percorso per riferirsi a un file. I comandi (commands) menzionati negli articoli precedenti di questa serie (cp, mv, rm, mkdir) vengono eseguiti tipicamente all&#8217;interno di un&#8217;interfaccia testuale (ad esempio KDE\/Konsole con shell GNU Bash). Di BASH ne \u00e8 ho parlato poco ma la menziono perch\u00e8 \u00e8 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22],"tags":[],"class_list":["post-173","post","type-post","status-publish","format-standard","hentry","category-computer"],"_links":{"self":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts\/173","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/comments?post=173"}],"version-history":[{"count":9,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts\/173\/revisions"}],"predecessor-version":[{"id":193,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/posts\/173\/revisions\/193"}],"wp:attachment":[{"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/media?parent=173"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/categories?post=173"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arkenidar.com\/wordpress\/wp-json\/wp\/v2\/tags?post=173"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}