Эй, ребята, я пытаюсь понять разумный способ сделать предложение НЕ в случае. Причина, по которой я это делаю, заключается в перекодировке , когда дело выполнено, иначе, если я попаду на avi, нет причин снова превращать его в avi, я могу просто сдвинуть его с пути (это то, что диапазон у основания моего дела должен do). Во всяком случае, у меня есть код proto, который я написал, что дает то, что я пытаюсь сделать.BASH не в случае
#!/bin/bash
for i in $(seq 1 3); do
echo "trying: $i"
case $i in
! 1) echo "1" ;; # echo 1 if we aren't 1
! 2) echo "2" ;; # echo 2 if we aren't 2
! 3) echo "3" ;; # echo 3 if we aren't 3
[1-3]*) echo "! $i" ;; # echo 1-3 if we are 1-3
esac
echo -e "\n"
done
ожидаемые результаты могли бы быть что-то вроде этого
2 3 ! 1
1 3 ! 2
1 2 ! 3
Помощь ценится, спасибо.
Вы понимаете, что 'case' будет, по дизайну, выполнять только одну вещь за вызов? –
... как дополнительный, '$ (seq 1 3)' не переносится - 'seq' не является стандартизованной POSIX-командой, и на многих платформах нет. Лучше использовать цикл C-стиля, т.е. 'for ((i = 1; i <= 3; i ++)); do' –
@CharlesDuffy Я этого не сделал, я думал, что он более гибкий, как php и т. д. – ehime