{"id":4,"date":"2013-02-07T16:15:34","date_gmt":"2013-02-07T16:15:34","guid":{"rendered":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/?p=4"},"modified":"2013-02-21T11:54:14","modified_gmt":"2013-02-21T11:54:14","slug":"interprete-comandos","status":"publish","type":"post","link":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/interprete-comandos\/","title":{"rendered":"El interpret d&#8217;ordres"},"content":{"rendered":"<p><\/p>\n<h3>L&#8217;int\u00e8rpret d&#8217;ordres \u00e9s programable<\/h3>\n<p>Una caracter\u00edstica essencial de l&#8217;int\u00e8rpret d&#8217;ordres \u00e9s que no nom\u00e9s llegeix i interpreta les ordres de l&#8217;usuari, sin\u00f3 que tamb\u00e9 \u00e9s un llenguatge de programaci\u00f3 bastant senzill d&#8217;utilitzar. Els programes poden ser tan senzills com una sola ordre amb algunes opcions o contenir conjunts d&#8217;ordres i sent\u00e8ncies de programaci\u00f3 de l&#8217;int\u00e8rpret.<\/p>\n<h3>Els programes estan dissenyats per col\u00b7laborar<\/h3>\n<p>Una idea b\u00e0sica que distingeix Linux d&#8217;altres sistemes operatius \u00e9s que els programes s\u00f3n eines, i com a tals, han de tenir una funci\u00f3 espec\u00edfica per\u00f2 han de poder usar-se per a diferents prop\u00f2sits. Tres caracter\u00edstiques s\u00f3n necess\u00e0ries per aconseguir aix\u00f2:<\/p>\n<ul>\n<li>Els resultats d&#8217;un programa han de poder usar-se com a dades d&#8217;entrada per a altres.<\/li>\n<li>Els programes han d&#8217;estar preparats per treballar en mode no interactiu, de manera que totes les opcions i dades que necessiten els puguin venir a trav\u00e9s d&#8217;un fitxer.<\/li>\n<li>Per defecte, els programes han de llegir l&#8217;entrada est\u00e0ndard (el teclat) i mostrar els resultats a la sortida est\u00e0ndard (la pantalla).<\/li>\n<\/ul>\n<p>Quan els programes poden usar-se d&#8217;aquesta manera, \u00e9s possible indicar a l&#8217;int\u00e8rpret que desitgem encadenar seq\u00fcencialment, de manera que la sortida de cada un d&#8217;ells constitueix l&#8217;entrada per al seg\u00fcent.<\/p>\n<h3>Complexitat a la carta<\/h3>\n<p>La filosofia de Linux \u00e9s proporcionar una gran quantitat d&#8217;utilitats que realitzen tasques simples de manera que l&#8217;usuari b\u00e0sic pugui desenvolupar-se amb comoditat, per\u00f2 a la vegada, a trav\u00e9s de la combinaci\u00f3 de comandes i les capacitats de programaci\u00f3 de l&#8217;int\u00e8rpret, proporciona la possibilitat de crear nous ordres m\u00e9s complexes per als usuaris que aix\u00ed ho requereixin.<\/p>\n<h3>El mode consola<\/h3>\n<p>Originalment la interacci\u00f3 amb l&#8217;int\u00e8rpret d&#8217;ordres es realitzava a trav\u00e9s del que es denominaven consoles (conjunt de teclat i pantalla) introduint ordres en un entorn sense visualitzaci\u00f3 gr\u00e0fica, \u00fanicament de text. L&#8217;int\u00e8rpret mostra un indicador (prompt) en la l\u00ednia d&#8217;ordres per mostrar a l&#8217;usuari que pot introduir una ordre. El format del prompt \u00e9s molt flexible, i pot mostrar informaci\u00f3 com el nom de l&#8217;usuari connectat o el directori actual, per exemple.<\/p>\n<p>Actualment, entorns com XWindow proporcionen interf\u00edcies gr\u00e0fiques que eviten moltes de les complexitats de la interacci\u00f3 a trav\u00e9s de la consola. No obstant aix\u00f2, hi ha encara ordres (sobretot d&#8217;administraci\u00f3 del sistema) que no estan completament suportats per aplicacions gr\u00e0fiques i es fa necessari la interacci\u00f3 a trav\u00e9s del que anomenarem <strong>mode consola<\/strong> o text en contrast amb la <strong>mode gr\u00e0fic<\/strong>. Per altra banda, la gesti\u00f3 remota dels servidors tamb\u00e9 acostuma a fer-se des de l&#8217;interpret d&#8217;ordres.<\/p>\n<p>No obstant aix\u00f2, en el manteniment remot de servidors Linux, \u00e9s habitual utilitzar el mode consola. \u00c9s convenient, doncs, estar familiaritzat amb el seu \u00fas si haurem de treballar amb servidors remots.<\/p>\n<p>Quan h\u00e0gim de introduir ordres, hem de tenir en compte que els int\u00e8rprets d&#8217;ordres de Linux distingeixen maj\u00fascules i min\u00fascules.<\/p>\n<h3>Variables d&#8217;entorn<\/h3>\n<p>Moltes utilitats de Linux, incloent l&#8217;int\u00e8rpret d&#8217;ordres, necessiten informaci\u00f3 sobre l&#8217;usuari i les seves prefer\u00e8ncies. Aquest tipus d&#8217;informaci\u00f3 s&#8217;emmagatzema en les variables d&#8217;entorn, que s\u00f3n gestionades per l&#8217;int\u00e8rpret de manera que s\u00f3n accessibles als programes que les necessiten.<\/p>\n<p>Encara que \u00e9s possible definir-les, hi ha una s\u00e8rie de variables d&#8217;entorn predefinides com per exemple les seg\u00fcents:<\/p>\n<ul>\n<li><em>PATH<\/em>: Cont\u00e9 la llista de directoris on l&#8217;int\u00e8rpret buscar\u00e0 les comandes que l&#8217;usuari demani executar.<\/li>\n<li><em>HOME<\/em>: Cont\u00e9 la ruta absoluta al directori personal de l&#8217;usuari.<\/li>\n<li><em>PS1<\/em>: Cont\u00e9 la definici\u00f3 del prompt principal que mostra l&#8217;int\u00e8rpret en mode text.<\/li>\n<\/ul>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>L&#8217;int\u00e8rpret d&#8217;ordres \u00e9s programable Una caracter\u00edstica essencial de l&#8217;int\u00e8rpret d&#8217;ordres \u00e9s que no nom\u00e9s llegeix i interpreta les ordres de l&#8217;usuari, sin\u00f3 que tamb\u00e9 \u00e9s un llenguatge de programaci\u00f3 bastant senzill d&#8217;utilitzar. Els programes poden ser tan senzills com una sola ordre amb algunes opcions o contenir conjunts d&#8217;ordres i sent\u00e8ncies de programaci\u00f3 de l&#8217;int\u00e8rpret. &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/interprete-comandos\/\" class=\"more-link\">Continua llegint <span class=\"screen-reader-text\">\u00abEl interpret d&#8217;ordres\u00bb<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-4","post","type-post","status-publish","format-standard","hentry","category-gnulinux","entry"],"_links":{"self":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/posts\/4","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/comments?post=4"}],"version-history":[{"count":7,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/posts\/4\/revisions"}],"predecessor-version":[{"id":58,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/posts\/4\/revisions\/58"}],"wp:attachment":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/media?parent=4"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/categories?post=4"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/ca\/wp-json\/wp\/v2\/tags?post=4"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}