У меня есть это упражнение:
Напишите сценарий, который использует if-then-else-fi и принимает последовательность параметров -a и -b со значениями «true» и «false» , в то время как для каждой пары записывается отрицание выражения -a <=> -b,
Пример:
-a -b writes
true true false
true false true
false true true
false false false
Например:
./script -a false -b false -a true -b true
пишет:
true
false
Мой вопрос в том, как заставить скрипт принимать параметры?
I просто боритесь с вводом. В остальном все должно быть хорошо.
if [ $( $2 or 0 ) xor $( $4 or 0 ) ]; then echo true; else echo false; fi
Объяснение:
На основе логической таблицы, которая является операцией XOR, поэтому используются $ 2
и $ 4
(второй и четвертый аргументы содержат данные, необходимые для выполнения этой операции)
, конечно, это не учитывает, когда кто-то переключает -a
и -b
.