У меня есть программа удара с различными этапами как:
$stage=1
if [ stage -le 1]; then echo "execute stage 1" fi
if [ stage -le 2]; then echo "execute stage 2" fi
if [ stage -le 3]; then echo "execute stage 3" fi
мои коды шаг за шагом являются очень в вычислительном отношении дорогими. То, что я хочу, должно выполнить те этапы, которые требуются.
Как я могу назвать этап 3 непосредственно и пропустить этап 1 и этап 2 от терминала команды в Linux.
Спасибо
Возможно, вы могли бы использовать для этого утверждение. Допустим, мы создаем скрипт с именем stage.sh
, тогда он может выглядеть примерно так:
#!/bin/bash
case $1 in
1) echo "stage 1" ;;
2) echo "stage 2" ;;
3) echo "stage 3" ;;
*) echo "unknown stage" ;;
esac
Что он делает, так это то, что он принимает первый ввод ($1
) при вызове из командной строки и совпадает с регистром Здесь, при выполнении ./stage.sh 1
будет отображаться stage 1
, а ./stage.sh 5
будет отображаться unknown stage
, поскольку нет совпадения с регистром (поэтому он прибегнет к опции *)
).