4
Как я могу grep asterisk *
внутри текстового файла? Вот мой код:Может ли bash grep «*» вместо « *»?
if grep -F "\#$minute $hour $date $month $day $cr_user $comm" filecron; then
echo "$minute $hour $date $month $day $cr_user $comm" > /dev/null 2>&1
echo "data exist"
elif [[ -z $minute || -z $hour ]]; then
echo "#$minute $hour $date $month $day $cr_user $comm" > /dev/null 2>&1
echo "nothing to input"
echo "" >> filecron
elif [[ $stat == "inactive" ]]; then
echo "\#$minute $hour $date $month $day $cr_user $comm" >> filecron
echo "input data inactive to filecron"
else
echo "$minute $hour $date $month $day $cron_user $comm" >> filecron
echo "input data active to filecron"
fi
Здесь filecron содержат
#30 07 03 09 RAB root bash /media/data/once.sh > /dev/null 2>&1
#* * * * * root bash /media/data/looping.sh > /dev/null 2>&1
#56 * * * * root bash /media/data/minutely.sh /dev/null 2>&1
#43 * * * * root bash /media/data/hourly.sh > /dev/null 2>&1
#54 11 * * * root bash /media/data/daily.sh /dev/null 2>&1
#00 12 * * RAB root bash /media/data/weekly.sh > /dev/null 2>&1
#30 20 15 * * root bash /media/data/monthly.sh > /dev/null 2>&1
#45 21 01 09 * root bash /media/data/yearly > /dev/null 2>&1
#15 16 31 08 MIN root bash /media/data/other.sh > /dev/null 2>&1
#30 07 * * * root bash /media/data/daily2.sh > /dev/null 2>&1
#30 10 * * * root bash /media/data/daily3.sh > /dev/null 2>&1
#45 17 17 * * root bash /media/data/monthly2.sh > /dev/null 2>&1
#00 18 * * SAB root bash /media/data/weekly2.sh > /dev/null 2>&1
#30 07 03 09 RAB root bash /media/data/once.sh > /dev/null 2>&1
#* * * * * root bash /media/data/looping.sh > /dev/null 2>&1
#56 * * * * root bash /media/data/minutely.sh /dev/null 2>&1
#43 * * * * root bash /media/data/hourly.sh > /dev/null 2>&1
Но grep
не работает, если $minute
или $hour
или $month
или $day
или $date
является *
Итак, как я это делаю ?
Я пробовал, но переменная все еще перенаправляется в файл. Он не должен перенаправляться в файл после grep. Вот пример файла. # 30 ($ minute) 15 ($ hour) * ($ date) * ($ month) MON ($ day) root ($ cr_user) bash /media/data/test1.sh>/dev/null 2> & 1 ($ comm) # * * * * * root bash /media/data/test2.sh>/dev/null 2> & 1 Как насчет этого? Как мне написать grep-код? –
Я не понимаю ваш вопрос. В этом вопросе нет перенаправления на файл. Это просто повторяет '/ dev/null', но я не понимаю, почему. – Barmar
Пожалуйста, обновите свой вопрос с примера содержимого 'filecron' и значений всех переменных. – Barmar