C'è un modo per passare un'istruzione tramite un argomento nella shell?


0

Quello che sto cercando di ottenere è impostare il titolo di un widget quando il computer va inattivo:

xsidle.sh echo mywidget.title = "idle" | awesome-client

quando rimuovo xsidle.sh funziona perfettamente. xsidle.sh è all'incirca:

sleep 10
command="$1"
$command

Ovviamente l'output di xsidle viene reindirizzato a awesome-client, mentre sto cercando di fare eco a awesome-client con un ritardo.

Ho provato a scappare con "o", l'uscita dell'eco è " mywidget.title = "idle" | awesome-client ".

Risposte:


2
#!/bin/sh
sleep 10
"$@"

Se non hai più nulla da fare dopo il comando, puoi usare

exec "$@"

Questo è nella tua pagina di manuale amichevole (prova man sh ), anche se non è così facile sapere come trovarlo. Vedi anche domande come questo .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.