Вы можете создать файл .forward
в своем домашнем каталоге, и почта будет пересылаться.
cd
echo "username@gmail.com" > .forward
chmod 644 .forward # change permission else it won't work
Синтаксис циклов while
в csh
отличается от синтаксиса Bourne -, подобного оболочкам. Это:
while (arithmetic-expression)
body
end
Когда csh
является интерактивным, по какой-то причине end
должен появиться сам по себе в строке.
Для арифметического -выражения для проверки успешности выполнения команды необходимо{ cmd }
(пробелов ). { cmd }
в арифметических выражениях разрешается в 1, если команда выполнена успешно (завершилась с нулевым статусом выхода )или 0 в противном случае (, если команда завершилась с не -нулевым статусом выхода ).
Так:
while ({ true })
body
end
Но это было бы немного глупо, особенно если учесть, что true
не является встроенной -командой в csh
. Для бесконечного цикла лучше использовать:
while (1)
body
end
Напротив, в оболочках POSIX используется следующий синтаксис:
while cmd; do
body
done
И если вы хотите, чтобы условие оценивало арифметическое выражение, вам нужно запустить команду, которая вычисляет их, например expr
, или ksh
, let
/ ((...))
или test
/ [
в сочетании с арифметическими расширениями $((...))
.
set i = 1
while ($i < 5)
echo "i is $i"
@ i++
end
или
set i = 1
while (1)
echo "i is $i"
@ i++
if ($i >= 5) break
end
Эти выходные данные:
i is 1
i is 2
i is 3
i is 4
csh
в настоящее время в значительной степени вытеснен оболочками sh
-, особенно на платформе Linux (, где использование csh
никогда не было широко распространено с самого начала ). Большинство BSD также предлагаютsh
-совместимые оболочки в качестве интерактивных оболочек по умолчанию.
Если вы изучаете программирование в оболочке, рассмотрите возможность изучения оболочки sh
, если ваша работа не требует от вас изучения сценариев csh
и tcsh
(в этом случае вы можете использовать оболочку sh
, например bash
, как вашу интерактивную оболочку вне зависимости от того, с какими типами скриптов вы работаете ).