Проверка скрипта выполняется

У меня есть график работы test.sh для запуска каждые 5 минут, а другое задание test1.sh запланировано на 12:30 вечера, @ 12.30 оба задания будут выполняться и заходят в тупик. Поэтому мне нужно проверить работу test.sh, для которой я использую:

ps -ef | grep test1.sh 

но это всегда верно, поскольку он создает линию для одной и той же команды.

  # ps -ef | grep test1.sh team 24896 607 0 11:55 pts/11 00:00:00 test1.sh team 24925 523 0 11:55 pts/4 00:00:00 grep test1.sh 

как избежать печати grep test1.sh ?

Я очень новичок в unix.

Спасибо, Ann

3 Solutions collect form web for “Проверка скрипта выполняется”

Вы можете просто игнорировать grep один за другим: –

 ps -ef | grep test1.sh | grep -v grep 

другое: –

 ps -ef | grep "[t]est1.sh" 

Второй – спуск, и это экономит много времени.

Если вы просто хотите посмотреть, будет ли он работать, а не вывести ps в grep вы можете использовать pgrep . Это будет выводить только PID процесса и быть намного более эффективным. Я использую флаг -x чтобы он соответствовал точному имени для test1.sh

 pgrep -x test1.sh 876 

Если вы хотите увидеть имя команды, вы также можете использовать флаг -l .

 pgrep -xl test1.sh 876 test1.sh 

И если вы хотите выполнить частичное совпадение, вы можете просто удалить -x

 pgrep -l test 876 test1.sh 877 test2.sh 888 test123.sh 8745 test.bin 

Это происходит потому, что grep и ps запускаются параллельно, поэтому процесс grep сопоставляется, потому что целевая строка test1.sh отображается как аргумент в ps . Простым, но, возможно, неоптимальным способом обойти это было бы:

 ps -ef | grep "test1.sh" | grep -v "grep" 

Второй канал выводит первый и исключает строки, содержащие соответствие для строки «grep».

  • Откройте специальные вкладки gvim
  • Перенаправление stdout игнорирует строки без символа перевода строки
  • Список строк, которые являются подстроками других строк в списке
  • тайм-аут вызывает, когда цикл чтения заканчивается, когда `cat` отключен
  • Запуск smartctl на всех дисках сервера
  • Требуется специальная проверка сценария оболочки
  • Создавать древовидную структуру каталога клонирования и копировать файлы в соответствующие каталоги, измененные после определенной даты
  • Измените только расширение файла
  • Поиск, подсчет и сортировка всех аудиофайлов. Файлы ALAC (M4A)
  • Замените% 20 пробелом в именах файлов?
  • Что такое sourcing мой сценарий оболочки?
  • Interesting Posts

    Как напечатать раздел руководства (человек)?

    Смогу ли я установить элементарные ОС с этими спецификациями?

    Как поместить конкретное устройство клавиатуры в режим ascii?

    более менее … пропуски … при поиске

    Как можно обеспечить цвет для завершения табуляции в tcsh?

    USB-ключ не устанавливается при загрузке, чтобы разблокировать систему LUKS

    Сетевой менеджер не принимает dns-поиск в отношении VPN, GNOME Ubuntu 16.04.1 LTS

    gpg не запрашивает пароль

    Как изменить индекс поиска в Ubuntu 11.04?

    Как удалить столбец или несколько столбцов из файла с помощью команды оболочки?

    Как узнать, почему NetworkManager не смог запустить VPN-соединение?

    Несколько загрузок из файлов ISO не показывают меню ОС

    Почему размер раздела и выход df отличаются?

    Установка Java JDK в busybox в контейнере LXC – java / lang / NoClassDefFoundError: java / lang / Object

    Quagga bgp реклама останавливается после перезагрузки

    Linux и Unix - лучшая ОС в мире.