Ich mag auszuführen:in Ruby einzige Backslash erstellen
kannecho aA1.-_#*~^%\':\;[email protected]=/ | passwd --stdin user
Es mit "aA1.-_#*~^%':;[email protected]=/"
angemeldet sein.
Ich versuchte
str = "aA1.-_#*~^%':;[email protected]=/"
password = str.gsub("'", "\\\\'").gsub(";", "\\;")
passwd_command = "echo" +
" #{password}" +
" | passwd" +
" --stdin user"
aber das Ergebnis war:
echo aA1.-_#*~^%\\':\\;[email protected]=/ | passwd --stdin aaa
ich es ausgeführt:
[[email protected] ~]# echo aA1.-_#*~^%\\':\\;[email protected]=/ | passwd --stdin aaa
>
Der Befehl nicht beendet hat. Hast du irgendwelche Vorschläge?
Ich habe echo aA1 \\ # \\ * \\ ~ \\^\\% \\\\ '-_:. \\\\; \\? \\! @ \\ =/| passwd --stdin aaa Sind wir auf der gleichen Seite? –
Hat es funktioniert? Ich habe meins auf einem Windows-System ausgeführt, das ich griffbereit hatte, also passt es vielleicht seine Ausgabe an das OS an. –
> Hat es funktioniert? -> nein. Ich benutze CentOS –