=== vitus_ is now known as vitus === Amm0n| is now known as Amm0n === Jochen_wvdT is now known as Schlawiner === Jochen_wvdT is now known as Schlawiner [09:23] guten morgen. ich habe in einem shell-script in einer funktion folgendes stehen: STUFF="${0//file:\/\//}". ich weiß was da passiert aber ich kann nicht nachvollziehen wieso. kann mir das jemand genauer erläuert bzw. mir sagen, wo ich das nachlesen kann? [09:25] handelt es sich dabei um parameter-expansion? falls ja, zu der zeichenfolge "${0//..}finde ich nirgends etwas, auch nicht in der man bash... [09:33] habe jetzt was gefunden: "${var/pattern/replacement}" das sollte es sein. [09:37] der string, der übergeben wird, lautet: file:///pfad/zur/datei/datei.xyz [09:38] aber wieso dann zweimal // zwischen der 0 und dem file: ? [09:41] wenn ich es richtig deute, dann soll an den Anfang ein file:// eingefügt werden [09:41] geser, nein, es wird vom string entfernt [09:42] heraus kommt dann der reine pfad ohne führendes file:///bla/blub/foo/bar/... [09:42] also so: /bla/blub/foo/bar/... [09:43] die 0 wird ersetzt durch die übergebene zeichenfolge, soweit klar, [09:44] ein / ist trennzeichen zum übergang von var zu pattern [09:44] aber wieso noch eins? [09:45] "If pattern begins with /, all matches of pattern are replaced with string." [09:46] danach dann file://(beide slashes gequotet, also: \/\/) [09:46] genau [09:47] und der letzte / zum übergang von pattern zu replacement [09:47] und ersetzt wird pattern durch nichts also kommt danach nichts mehr ausser dem } [09:47] pattern ist "/file://" (ohne escaping) und string ist leer [09:48] geser, woher hast du das: "If pattern begins with /, all matches of pattern are replaced with string." [09:48] aus "man bash", Parameter Expansion, ${parameter/pattern/string} [09:54] geser, also gehört das / vor dem file: nicht zum pattern selbst sondern ist eine art steuerzeichen, das bestimmt, welcher teil des ausdrucks passen muss (komplett/anfang/ende)? [09:54] so wie # oder % [09:55] geser, glaube ich habe es verstanden, DANKE DIR! [10:07] geser, wobei das verdoppeln des ersten / in meinem fall eig. gar nicht benötigt wird, es würde nur weitere vorkommen von pattern durch replacement ersetzen, was bei mir niemals der fall sein dürfte :-D === MadPsymon7 is now known as MadPsymon [12:33] nochmal eine frage: im internet steht überall geschrieben, dass eine funktion via $1 ihren ersten parameter anspricht. bei mir nicht, bei mir ist $0 der erste parameter. wieso ist das bei mir so? [12:34] was gibt $0 denn aus? [12:34] http://tldp.org/LDP/abs/html/othertypesv.html [12:34] Title: Special Variable Types (at tldp.org) [12:34] das, was ich beim aufruf der funktion eben als ersten parameter angebe [12:35] $0 sollte eigentlich der name zum script sein [12:35] auch in einer funktion? [12:35] ah [12:35] :-) [12:37] und $1 ist bei mir _innerhalb_ der funktion der 2. parameter. [12:38] und so weiter... [12:38] Skripte haben in $0 den Skriptnamen, Funktionen haben in $0 den ersten Parameter [12:38] also schreiben die webseiten mist... [12:38] oder ist das mal geändert worden? [12:39] das geht doch so nicht. [12:39] das muss doch mal jemand ändern. [12:39] $-1 [12:40] ist aber auch verwirrend wenn $0 einmal es selbst ist und einmal das danach ^^ [12:40] ahwo. [12:40] alles sache vom scope [12:40] danke.^^ [13:01] Hallo zusammen === cnill is now known as bimbam2103 [13:01] Sorry falscher nick === reichi63 is now known as reichi62 === reichi63 is now known as reichi62