2017-03-03 1 views
0

J'ai eu un problème étrange lors de l'écriture d'une commande sur le putty."-bash:! D: événement non trouvé" lors de l'écriture de la commande sur le putty

Je veux télécharger la base de données de mastic. Je suis connecté avec succès en utilisant une clé privée et une phrase secrète.
J'ai utilisé cette commande pour télécharger la base de données.

mysqldump -u root -pjP +! D) foo> foodump.sql

j'ai eu l'erreur suivante.

-bash:! D: événement non trouvé.

J'ai tellement de caractères spéciaux dans le mot de passe original. mysqldump, ls etc commandes fonctionnent bien donc je ne peux pas comprendre problème en elle.

J'ai essayé de me connecter à l'aide de WINSCP et d'exécuter la commande dans le terminal et d'ouvrir le putty de WINSCP. Mais pas de chance pour moi.

+0

Avez-vous essayé mysqldump -u root -p "jP + D)!" Foo> foodump.sql'? –

+1

vous avez besoin de guillemets autour du mot de passe: 'mysqldump -u root -p 'jP +! D)' foo> foodump.sql' – arco444

+0

@ arco444. J'ai essayé avec des qoutes simples et doubles également. Il montre la permission refusée. Et le mot de passe est bon. Donc, peut-être qu'il considère qoutes comme un mot de passe. Corrigez-moi si j'ai tort, s'il-vous plait. – Bhavin

Répondre

0

Essayez de mettre des guillemets simples autour de la chaîne de mot de passe:

$ echo 'jP+!D)' 
    jP+!D) 

Les guillemets simples, signifie que chaque caractère spécial (sauf ') est interprété littéralement.

Plus ici: http://tldp.org/LDP/abs/html/quotingvar.html

+0

Merci. Lien parfait pour référence. Cela a résolu mon problème. :) – Bhavin