C'è un modo per combinare logicamente due comandi di shell che vengono invocati con find - exec ?
Ad esempio, per stampare tutti i file .csv che contengono la stringa foo insieme alla sua occorrenza, vorrei fare:
find . -iname \*.csv -exec grep foo {} && echo {} \;
ma bash si lamenta con "l'argomento mancante di '-exec'"
sh
(in questo caso {}
) sarà $1
e $0
sarà qualcosa del genere sh
. Ma in realtà, hai ragione, il primo argomento si presenta come $0
. Avere il primo argomento come nome del comando invocante è solo una convenzione, che non viene automaticamente applicata in questi casi.
-exec
in sequenza o utilizzare un singolo-exec sh -c 'grep foo "$0" && printf %s\\n "$0"' {} \;
.