{"id":1649,"date":"2015-05-25T12:35:27","date_gmt":"2015-05-25T10:35:27","guid":{"rendered":"https:\/\/bob-team.de\/wordpress\/?p=1649"},"modified":"2015-12-28T11:58:09","modified_gmt":"2015-12-28T10:58:09","slug":"xml-datei-im-skript-nutzen","status":"publish","type":"post","link":"https:\/\/bob-team.de\/wordpress\/2015\/05\/25\/xml-datei-im-skript-nutzen\/","title":{"rendered":"XML-Datei im Skript nutzen"},"content":{"rendered":"<p>Die Datei <tt>${HOME}\/.credentials<\/tt> mit dem Einzeiler aus Benutzername, Tabulator und Kennwort ist schnell angelegt und wie folgt benutzt.<\/p>\n<p> [code lang=&#8220;bash&#8220;]#!\/bin\/bash<br \/>\nread USER PASS <${HOME}\/.credentials\nwget --user=\"${USER}\" --password=\"${PASS}\" \\\nhttp:\/\/mein.de\/status.txt[\/code]\n\nDie einfache L\u00f6sung ist nicht optimal. Besser ist eine XML-Datei. Sie ist lesbarer und skaliert leichter.\n\n [code lang=\"xml\"]<cfgs><br \/>\n  <cfg url=\"http:\/\/mein.de\/status.txt\"><br \/>\n    <user>ich<\/user>\n    <pass>geheim<\/pass>\n  <\/cfg><br \/>\n<\/cfgs>[\/code]<\/p>\n<p> [code lang=&#8220;bash&#8220;]#!\/bin\/bash<br \/>\nURL=&#8220;http:\/\/mein.de\/status.txt&#8220;<br \/>\nread USER PASS <( \\\n  xmlstarlet sel -t \\\n    -m \"\/\/cfg[@url=\\\"${URL}\\\"]\" \\\n    -v user -o $'\\t' -v pass \\ \n    ${HOME}\/.credentials \\\n)\nwget --user=\"${USER}\" --password=\"${PASS}\" ${URL}[\/code]\n\nWeitere Details und Beispiele (z.B. die Pr\u00fcfung einer XML-Datei mit <tt>xmlstarlet<\/tt>) finden sich in c&#8217;t 12\/2015 ab Seite 176.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Die Datei ${HOME}\/.credentials mit dem Einzeiler aus Benutzername, Tabulator und Kennwort ist schnell angelegt und wie folgt benutzt. [code lang=&#8220;bash&#8220;]#!\/bin\/bash read USER PASS<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[140,124],"class_list":["post-1649","post","type-post","status-publish","format-standard","hentry","category-linux","tag-wget","tag-xmlstarlet","entry"],"_links":{"self":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts\/1649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/comments?post=1649"}],"version-history":[{"count":2,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts\/1649\/revisions"}],"predecessor-version":[{"id":1651,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/posts\/1649\/revisions\/1651"}],"wp:attachment":[{"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/media?parent=1649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/categories?post=1649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bob-team.de\/wordpress\/wp-json\/wp\/v2\/tags?post=1649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}