Hi,
ich will aus einem Makefile raus einen perl-Einzeiler aufrufen. Dummerweise ersetzt mir make jedes $… durch irgendwas. Wie kann ich das verhindern?
Danke im Voraus,
Moritz
Hallo,
ich will aus einem Makefile raus einen perl-Einzeiler
aufrufen. Dummerweise ersetzt mir make jedes $… durch
irgendwas.
Suchst Du „“?
Wie kann ich das verhindern?
„info make“ lesen.
Gruß,
Sebastian
Hi,
danke fuer die schnelle antwort
Suchst Du „“?
Das dachte ich auch…
perl -e ‚open („testfile“, IN); @a = ; $_ = join @a; s/\n/ /; print $_, $/;‘| ./$(BIN) > /tmp/wsort_test
wird zu
perl -e ‚open („testfile“, IN); @a = ; /usr/bin/make = join @a; s/\n/ /; print /usr/bin/make, ;‘| ./wsort > /tmp/wsort_test
Bareword found where operator expected at -e line 1, near „/usr/bin“
(Missing operator before bin?)
Bareword found where operator expected at -e line 1, near „/usr/bin“
(Missing operator before bin?)
Can’t modify reference constructor in scalar assignment at -e line 1, near „;“
syntax error at -e line 1, near „/usr/bin“
syntax error at -e line 1, near „/usr/bin“
Execution of -e aborted due to compilation errors.
ich sollte vielleicht @ nicht quoten, aber das mit $ bleibt…
„info make“ lesen.
daraus werde ich nicht besonders schlau. Da steht nur dass hashes # mit backslash gequotet werden koennen. Von Variablen habe nichts gefunden.
Gruesse,
Moritz
mal ne idee von nem laien
kannste keine Variable definieren, in der ein $ steht?
kannste keine Variable definieren, in der ein $ steht?
Aeh… ja. Oder eher: nein.
Noch ne Idee vom Laien (auf perl hab ich gerade keinen Bock):
frank@harbard [~] $ cat Makefile
all:
echo $$HOME
frank@harbard [~] $ make
echo $HOME
/home/frank
frank@harbard [~] $
Hey, das funktioniert sogar.
HTH,
Gruss vom Frank.
Danke
Das war genau das was ich suchte!
Gruesse,
Moritz