On Thu, 5 Feb 2015 14:19, Daniel Spannbauer wrote:
Moin,
ich kann ja dem Kernel bzw. dem System auf der Kommandozeile parameter mitgeben, splash=silent etc. pp.
Nun will ich einen Parameter selber setzen und auswerten.
z.B. MeinParameter=123 Über /proc/cmdline komme ich ja an die ganzen Parameter ran. Nur: Wie kann ich die auf der Bash verwursten? Es gibt parameter mit nem Gleichheitsszeichen im Parameter, dann wieder welche ganze ohne Zuweisungen....
Irgendwie seh ich gerade den Wald nicht.....
Trennzeichen ist ein "Leerzeichen". Wenn du einen Parameter pro Zeile möchtest, kannst do "tr ' ' '\n'" dafür benutzen, oder gleich eine "for" schleife nehmen, die will Leerzeichen. [code] for param in $(/dev/null || param="$param=1" # BÖSE, nicht gut, such Dir 'ne andere Lösung # setzt param als shell variable eval $param [/code] Wenn Dich nur ein spezieller parameter interessiert, geht das auch etwas anders, hier nur die Verwurstung [code] case $param in MyParameter=*) eval $param;; *) ;; esac [/code] Anstelle von eval kann dann auch sed, oder bash selbst genommen werden [code] # Name ist hier "MyParameter", interesanter teil NACH '=' Variable=${param#MyParameter=} [/code] Wenn param="MyParameter=blubber", dann erhalten wir Variable="blubber" Komplett also: [code] #!/usr/bin/bash Variable='nix_da' for param in $(