timeStart=`date --date='8AM' +"%s"`
timeStop=`date --date='23:59:00' +"%s"`
now=`date +"%s"`
if (($now >= $timeStart && $now < $timeStop))
then
#CRON JOBS BETWEEN 8AM AND 12PM
echo "NO BEER"
else
#CRON JOBS OUTSIDE OF 8AM AND 12PM
echo "DRINK BEER"
fi
-121--108384- В awk
«тело» должно иметь следующий синтаксис:
condition{command}
При выполнении условия
команда
выполняется с текущей строкой. Это также может быть:
{command}
... без условия
, поэтому оно будет выполнено для каждой строки . Это также справедливо:
condition
... без команды
, то awk
просто печатает $0
, следовательно, всю строку, когда выполняется условие
.
Ваше awk
должно выглядеть следующим образом:
awk 'BEGIN{print "ID|Name|Designation|Department|Salary";OFS="|"}
$1>200{$1=$1;print} END{print"------------------------"}' file
Примечание $1 = $1
. Это необходимо, поскольку изменяется только разделитель выходного поля. Поэтому вам нужно будет либо печатать поля один за другим ( $1, $2,...
) или принудительно восстановите запись на $ n = $ n
.
Попробуйте --regex
(без «p»), а не -r
(он же --regexp
). Это указывает найти
для использования расширенных регэкспов, а не базовых.
locate --regex "^/var/lib/tomcat[0-9]{1,2}/" -l 10
либо побег {
и }
с \
, чтобы сделать их специальными в базовом регексе.