Ваш , если оператор
неверен, он должен быть , если [$ i! = 10]
. Пробелы вокруг [
являются обязательными, и ваши переменные должны иметь знак $
перед ним, если вы их читаете.
for i in {1..30}; do if [ $i != 10 ]; then echo "hello $i"; fi; done
Вы можете использовать функцию оболочки практически везде, где можете использовать программу. Просто помните, что функции оболочки не существуют вне области, в которой они были созданы.
#!/bin/bash
#
f() {
sleep 1
echo "f: Hello from f() with args($*)" >&2
sleep 1
echo "f: Goodbye from f()" >&2
}
echo "Running f() in the foreground" >&2
f one
echo "Running f() in the background" >&2
f two &
echo "Just waiting" >&2
wait
echo "All done"
exit 0
Вы запускаете их в фоновом режиме, как и любую другую команду оболочки или сценарий с &
в конце.
Bash и подобные оболочки также позволяют комбинировать команды с (
и )
, например:
(command1; command2) &