Portál AbcLinuxu, 1. května 2025 16:15
sshpass je pro lenochy, kteří jsou zhnilí zadávat heslo ručně.Ne, na to slouží SSH klíče.
if echo $REPLY | grep . > /dev/null; then1) grep má přepínač -q, 2) tohle se dělá if [ -z "$REPLY" ]
grep -q
bude si elegantnější jak to přesměrovávat. Dík za tip. Ale ten [ -z "$REPLY" ]
je naprd v tom, že když uživatel napíše mezeru místo nějakých viditelných znaků, tak proměnná $REPLY nebude prázdná a ten test vrátí false. Proto tam mám to echo bez uvozovek s grepem.
Co se stane, kdyz do toho nekdo jako filtr zada treba ; echo rm -rf /somedirtcpdump vyhodí error:
tcpdump: illegal token: ;a wireshark:
** (wireshark:153454) 23:31:19.467539 [Capture MESSAGE] -- Capture Start ... ** (wireshark:153454) 23:31:19.761040 [Capture MESSAGE] -- Error message from child: "End of file on pipe magic during open.", "" ** (wireshark:153454) 23:31:22.004636 [Capture MESSAGE] -- Capture stopped.Taky mi to moc hlava nebere jakto že se to rozexpanduje, ale bez těch jednoduchých uvozovek mi ten skript nechce fungovat. Si zkus zakomentovat ten poslední řádek aby se nic nespustilo a uvidíš.
sh: syntax error: unexpected "("
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.