Hallo Leute,
Wenn ich 'pgp' aus einem Script (php) heraus starte und meine Passphrase an das Script mitgebe, werden einige Zeichen von der Shell interpretiert, die den Aufruf ausführt. So ergibt, z.B.:
--- <PHP> --- $pass = "Micro $oft hilft bei Laptop-Beschwerden"; /* Quelle: c't 5/2001 S. 85f */ exec(EscapeShellCmd("pgp +batchmode -z "$pass" -s $file"); --- </PHP> ---
--- <SHELL> --- pgp +batchmode -z "Micro $oft hilft bei Laptop-Beschwerden" -s afile --- </SHELL> ---
eine Passphrase, die kein '$oft' enthält. Logisch. Auch die var 'oft' will ich nicht wirklich da rein haben. ;-) Wie aber kann ich der shell noch mal abgewöhnen diese Zeichen zu interpretieren?
Merci, Christian
PS: An alle die PHP sprechen: ein addslashes() verkrüppelt die Pass.