{"id":179,"date":"2011-07-30T21:37:42","date_gmt":"2011-07-30T19:37:42","guid":{"rendered":"http:\/\/elwin013.com\/blog\/?p=179"},"modified":"2011-08-02T00:20:58","modified_gmt":"2011-08-01T22:20:58","slug":"bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami","status":"publish","type":"post","link":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/","title":{"rendered":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami"},"content":{"rendered":"<p>Pora na drugi wpis o Bashu. ;) I tym razem kod pisany by\u0142 dla <a href=\"http:\/\/swistak35.com\">\u015awistaka<\/a>.<\/p>\n<p><strong>Zadanie:<\/strong> Chcemy uruchomi\u0107 program kilka razy z dwoma parametrami &#8211; ale za ka\u017cdym razem s\u0105 one inne. Przechowujemy je w pliku parametry.txt w postaci &#8222;parametr1|parametr2&#8221; (w ka\u017cdej linii dwa parametry do jednego wywo\u0142ania programu).<br \/>\n<!--more--><br \/>\n<strong>Rozwi\u0105zanie:<\/strong><\/p>\n<pre><code>#!\/bin\/bash\r\nwhile read line; \r\n do program ${line%|*} ${line#*|} \r\ndone < parametry.txt<\/code><\/pre>\n<p>Program iteruje linia po linii plik parametry.txt (przekazany do p\u0119tli) i w ka\u017cdej iteracji wywo\u0142uje program z okre\u015blonymi parametrami. Przy pomocy <code>${line%|*} <\/code> wycinamy fragment od pocz\u0105tku do znaku \"|\", natomiast przy pomocy <code>${line#*|}<\/code> od ko\u0144ca do owego znaku.<\/p>\n<p>Warta zapami\u0119tania jest mo\u017cliwo\u015b\u0107 przekazania zawarto\u015bci pliku do p\u0119tli, dzi\u0119ki czemu iterujemy plik linia po linii. :) Pr\u00f3cz tego trzeba zaznaczy\u0107, \u017ce dzi\u0119ki wyra\u017ceniom regularnym tworzenie skrypt\u00f3w w Bashu staje si\u0119 du\u017co prostsze. :)<\/p>\n<p>Mam nadziej\u0119, \u017ce ten kr\u00f3tki wpis komu\u015b si\u0119 przyda. :)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pora na drugi wpis o Bashu. ;) I tym razem kod pisany by\u0142 dla \u015awistaka. Zadanie: Chcemy uruchomi\u0107 program kilka razy z dwoma parametrami &#8211; ale za ka\u017cdym razem s\u0105 one inne. Przechowujemy je w pliku parametry.txt w postaci &#8222;parametr1|parametr2&#8221; (w ka\u017cdej linii dwa parametry do jednego wywo\u0142ania programu).<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29],"tags":[30,85],"class_list":["post-179","post","type-post","status-publish","format-standard","hentry","category-programowanie","tag-bash","tag-programowanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"elwin013\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"elwin013&#039;s blog | kawa\u0142ek sieci m\u0142odego geeka\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013&#039;s blog\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2011-07-30T19:37:42+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2011-08-01T22:20:58+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013&#039;s blog\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#article\",\"name\":\"Bash #2: uruchamianie jednego polecenia z r\\u00f3\\u017cnymi argumentami | elwin013's blog\",\"headline\":\"Bash #2: uruchamianie jednego polecenia z r\\u00f3\\u017cnymi argumentami\",\"author\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/author\\\/elwin013\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/#organization\"},\"datePublished\":\"2011-07-30T21:37:42+01:00\",\"dateModified\":\"2011-08-02T00:20:58+01:00\",\"inLanguage\":\"pl-PL\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#webpage\"},\"articleSection\":\"programowanie, bash, programowanie\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/elwin013.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/category\\\/programowanie\\\/#listItem\",\"name\":\"programowanie\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/category\\\/programowanie\\\/#listItem\",\"position\":2,\"name\":\"programowanie\",\"item\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/category\\\/programowanie\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#listItem\",\"name\":\"Bash #2: uruchamianie jednego polecenia z r\\u00f3\\u017cnymi argumentami\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#listItem\",\"position\":3,\"name\":\"Bash #2: uruchamianie jednego polecenia z r\\u00f3\\u017cnymi argumentami\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/category\\\/programowanie\\\/#listItem\",\"name\":\"programowanie\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/#organization\",\"name\":\"elwin013's blog\",\"description\":\"kawa\\u0142ek sieci m\\u0142odego geeka\",\"url\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/author\\\/elwin013\\\/#author\",\"url\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/author\\\/elwin013\\\/\",\"name\":\"elwin013\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/57e6103d297cb87da16815c5b5ec11dfa651c49f0a45caa0946c4147fe52bab7?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"elwin013\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#webpage\",\"url\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/\",\"name\":\"Bash #2: uruchamianie jednego polecenia z r\\u00f3\\u017cnymi argumentami | elwin013's blog\",\"inLanguage\":\"pl-PL\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/2011\\\/07\\\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/author\\\/elwin013\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/author\\\/elwin013\\\/#author\"},\"datePublished\":\"2011-07-30T21:37:42+01:00\",\"dateModified\":\"2011-08-02T00:20:58+01:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/\",\"name\":\"elwin013's blog\",\"description\":\"kawa\\u0142ek sieci m\\u0142odego geeka\",\"inLanguage\":\"pl-PL\",\"publisher\":{\"@id\":\"https:\\\/\\\/elwin013.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013's blog","description":"","canonical_url":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#article","name":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013's blog","headline":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami","author":{"@id":"https:\/\/elwin013.com\/blog\/author\/elwin013\/#author"},"publisher":{"@id":"https:\/\/elwin013.com\/blog\/#organization"},"datePublished":"2011-07-30T21:37:42+01:00","dateModified":"2011-08-02T00:20:58+01:00","inLanguage":"pl-PL","mainEntityOfPage":{"@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#webpage"},"isPartOf":{"@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#webpage"},"articleSection":"programowanie, bash, programowanie"},{"@type":"BreadcrumbList","@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/elwin013.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog\/category\/programowanie\/#listItem","name":"programowanie"}},{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog\/category\/programowanie\/#listItem","position":2,"name":"programowanie","item":"https:\/\/elwin013.com\/blog\/category\/programowanie\/","nextItem":{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#listItem","name":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami"},"previousItem":{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#listItem","position":3,"name":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami","previousItem":{"@type":"ListItem","@id":"https:\/\/elwin013.com\/blog\/category\/programowanie\/#listItem","name":"programowanie"}}]},{"@type":"Organization","@id":"https:\/\/elwin013.com\/blog\/#organization","name":"elwin013's blog","description":"kawa\u0142ek sieci m\u0142odego geeka","url":"https:\/\/elwin013.com\/blog\/"},{"@type":"Person","@id":"https:\/\/elwin013.com\/blog\/author\/elwin013\/#author","url":"https:\/\/elwin013.com\/blog\/author\/elwin013\/","name":"elwin013","image":{"@type":"ImageObject","@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/57e6103d297cb87da16815c5b5ec11dfa651c49f0a45caa0946c4147fe52bab7?s=96&d=mm&r=g","width":96,"height":96,"caption":"elwin013"}},{"@type":"WebPage","@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#webpage","url":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/","name":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013's blog","inLanguage":"pl-PL","isPartOf":{"@id":"https:\/\/elwin013.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/#breadcrumblist"},"author":{"@id":"https:\/\/elwin013.com\/blog\/author\/elwin013\/#author"},"creator":{"@id":"https:\/\/elwin013.com\/blog\/author\/elwin013\/#author"},"datePublished":"2011-07-30T21:37:42+01:00","dateModified":"2011-08-02T00:20:58+01:00"},{"@type":"WebSite","@id":"https:\/\/elwin013.com\/blog\/#website","url":"https:\/\/elwin013.com\/blog\/","name":"elwin013's blog","description":"kawa\u0142ek sieci m\u0142odego geeka","inLanguage":"pl-PL","publisher":{"@id":"https:\/\/elwin013.com\/blog\/#organization"}}]},"og:locale":"pl_PL","og:site_name":"elwin013's blog | kawa\u0142ek sieci m\u0142odego geeka","og:type":"article","og:title":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013's blog","og:url":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/","article:published_time":"2011-07-30T19:37:42+00:00","article:modified_time":"2011-08-01T22:20:58+00:00","twitter:card":"summary","twitter:title":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami | elwin013's blog"},"aioseo_meta_data":{"post_id":"179","title":null,"description":null,"keywords":null,"keyphrases":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":"default","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,"limit_modified_date":false,"created":"2022-03-18 08:54:02","updated":"2022-09-21 04:54:11","primary_term":null,"ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/elwin013.com\/blog\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/elwin013.com\/blog\/category\/programowanie\/\" title=\"programowanie\">programowanie<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tBash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/elwin013.com\/blog"},{"label":"programowanie","link":"https:\/\/elwin013.com\/blog\/category\/programowanie\/"},{"label":"Bash #2: uruchamianie jednego polecenia z r\u00f3\u017cnymi argumentami","link":"https:\/\/elwin013.com\/blog\/2011\/07\/bash-2-uruchamianie-jednego-polecenia-z-roznymi-argumentami\/"}],"_links":{"self":[{"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/posts\/179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/comments?post=179"}],"version-history":[{"count":15,"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/posts\/179\/revisions"}],"predecessor-version":[{"id":287,"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/posts\/179\/revisions\/287"}],"wp:attachment":[{"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/media?parent=179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/categories?post=179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/elwin013.com\/blog\/wp-json\/wp\/v2\/tags?post=179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}