# Meine erste Shell ... Problem mit der Raute

## D.Zunke

Moin, 

irgendwie hab ich ein kleines Problem. 

Ich habe mir ein Shellscript geschrieben, dass als Cron ausgeführt werden soll. Es geht darum von einer Datenbank ein Dump zu erstellen. Nun habe ich aber folgendes Problem. Im Password der Datenbank ist eine Raute enthalten. Nun würde er ja die zeile als Kommentar erkennen. Gibt es da eine Möglichkeit, dass dies nicht passiert? 

```
mysqldump --user <Bentutzer> --password=bl4k#skj <Datenbank> > /Pfad zur Datei
```

Das ist denke ich ein gutes Beispiel, natürlich habe ich das Passwort verändert :p ABer so der Aufbau des Passwortes stimmt. Leider kann ich es auch nicht ändern, da andere auf das eine Passwort angewiesen sind und eine Umstellung zu aufwendig wäre. 

Das Problem ist eben, dass er das hinter der # als Kommentar vormerkt, statt die Raute zum Passwort zu zählen.

LG 

Denis

----------

## LunX

Also mir würde da nur einfallen die Raute zu entwerten aber ich wuesste nicht womit in der Shell bei PHP wirds mit \ angestellt.

Gruß

Lunx

----------

## D.Zunke

Danke, aber leider funktioniert das nicht. 

Ich habe auch schon versucht das Passwort in Hochkommas zu setzen.

----------

## c_m

--passwort='#passwort'

--passwort=\#passwort

muss eigentlich gehen. Hast schon mal von hand in der Shell das ganze probiert, oder gehts nur per Cron nicht?

----------

## xces

Sollte das Problem weiterhin auftreten, wenn das Passwort in Anführungszeichen "" steht, liegt der Fehler an einer anderen Stelle, z. B. dem fehlenden Pfad zu mysqldump.

----------

## D.Zunke

Ich habe das ganze schon per Hand eingegeben und da geht es. Wenn ich aber die Shell starte, dann geht es nicht. Einen Cronjob habe ich noch gar nicht eingestellt, so lang das Script nicht läuft  :Wink: 

Ebenso habe ich das Problem an anderer Stelle. (Wer baut nur immer rauten in die Passwörter ein?). 

Also an anderer Stelle versuche ich eine sshfs zu mounten. Auch wieder eine Raute im Passwort.

```
sshfs root:mdk20ksdO#@192.168.0.5:/mnt /mnt
```

... Da erkennt er die Raute auch nicht an. Das Verzeichnis /mnt existiert. Wenn ich das Passwort nicht in den Login tue, dann kommt eine Abfrage danach, aber das soll ja automatisch laufen per Shell Script ^^

... alles sehr merkwürdig.

----------

## xces

 *D.Zunke wrote:*   

> Ich habe das ganze schon per Hand eingegeben und da geht es. Wenn ich aber die Shell starte, dann geht es nicht.

 

Beschreibe genau, was du machst, was du erwartest und was tatsächlich passiert. Poste das Skript.

 *D.Zunke wrote:*   

> Also an anderer Stelle versuche ich eine sshfs zu mounten. Auch wieder eine Raute im Passwort.

 

Einfach escapen, wie von c_m beschrieben.

----------

## AmonAmarth

 *xces wrote:*   

>  *D.Zunke wrote:*   Ich habe das ganze schon per Hand eingegeben und da geht es. Wenn ich aber die Shell starte, dann geht es nicht. 
> 
> Beschreibe genau, was du machst, was du erwartest und was tatsächlich passiert. Poste das Skript.
> 
>  *D.Zunke wrote:*   Also an anderer Stelle versuche ich eine sshfs zu mounten. Auch wieder eine Raute im Passwort. 
> ...

 

es ist aber sehr unsicher das pw im plain text auf der festplatte abgespeichert vorliegen zu haben, vielleicht sollte man hier eine .sshfspwdatei erstellen worin der username und das passende pw (verschlüsselt) vorliegt

----------

## Eisbrecher

Hat sich wohl inzwischen erledigt: http://www.debianforum.de/forum/viewtopic.php?t=86436&highlight=

----------

## sirro

Passwort in der Kommandozeile ist ganz schlecht, da jeder es mit ps sehen kann. Da du es nicht aendern kannst gehe ich davon aus, dass du nicht alleine auf dem server bist.

Lieber in der ~/.my.xnf setzen

```
$ cat .my.cnf

[client]

password=1234
```

Für ssh am besten den agent einsetzen.

----------

## D.Zunke

Moin,

hat sich erledigt. Klappte auch mit Hochkommas, aber ich habe einfach einen neuen Datenbankbenutzer angelegt, der nur für Backups da ist.

----------

