(7 risposte)
Chiuso 3 anni fa.
Ho uno script come il seguente:
flag=false
# Do a bunch of stuff that might set flag to true.
if [[ "$flag" == "true" ]]; then
command \
| pipe_command_a \
| pipe_command_b \
| pipe_command_c \
| pipe_command_d \
> "${output_path}"
else
command \
| pipe_command_a \
| pipe_command_c \
| pipe_command_d \
> "${output_path}"
fi
L'unica differenza tra flag
essendo true
o false
fa è che pipe_command_b
potrebbe non essere eseguito. C'è un modo per comprimerlo in modo da non dover ripetere tutte le cose comuni?
Risposta accettata:
Usa cat
invece del comando se vuoi saltarlo:
command=cat
if [[ $flag == true ]] ; then
command=pipe_command_b
fi
command \
| pipe_command_a \
| $command \
| pipe_command_c