GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Sonderzeichen '#' im Perl-Ssh-Befehl?

Ich versuche, einen Befehl mit SSH in meinem Perl-Skript mit # zu senden, aber er wird direkt bei #

abgeschnitten

Beispiel:

Eingabetext ist :

$message = "Product ID # STK000134"

Der SSH-Befehl lautet:

$execute=`ssh -q [email protected] /usr/message/send -pin $pager_num -message $message`;

Was durchläuft ist:

ssh -q [email protected] /usr/message/send -pin $pager_num -message Product ID 

Statt :

ssh -q [email protected] /usr/message/send -pin $pager_num -message Product ID # STK000134

Wie kann ich sicherstellen, dass # und der gesamte Text hinter # durchkommt?

Akzeptierte Antwort:

# startet einen Kommentar in der Shell. Anführungszeichen hinzufügen:

$message =~ s/\#/\\\#/g;
$execute=`ssh -q [email protected] /usr/message/send -pin $pager_num -message "'$message'"`;

Linux
  1. wc-Befehl gibt falsche Ausgabezeichenanzahl aus [Gelöst]

  2. Ssh – Beschränken eines Ssh/scp/sftp-Benutzers auf ein Verzeichnis?

  3. Ssh zu mehreren Hosts und einen Befehl ausführen?

  4. sshpass-Befehl:Nicht interaktive Kennwortauthentifizierung mit SSH

  5. Zeichenbeschränkung für die Linux-Befehlszeile

SSH-Befehl

So übergeben Sie das Passwort an den SSH-Befehl in Linux

Verwendung von SSH-Befehlen in Linux/Unix-Systemen

Ein Windows-Typ in einer Linux-Welt:Einrichten des SSH-Befehls in Linux

Linux-Befehl zum Warten auf das Hochfahren eines SSH-Servers

Ausführen eines lang andauernden Befehls auf ssh