Невозможно получить выход программы

Это означает, что все файлы банки в каталоге имели изменения состояния меньше чем 48 часов назад.

Подробное объяснение

Согласно find страница справочника,

-ctime n
    File's status was last changed n*24 hours ago.

И...

When find figures out how many 24-hour periods ago the file was 
last accessed, any fractional part is ignored, so to match -atime +1, 
a file has to have been accessed at least two days ago.

И в другом месте...

+n for greater than n

Поэтому -ctime +1 означает, что состояние файла, должно быть, изменилось по крайней мере 48 часов назад.

4
26.09.2011, 14:24
2 ответа

Давайте улучшим ответ P.T.:s просто немного.

Каноническая форма отправляет весь нормальный вывод в файл журнала.

./run_all_with_logs >> logs/my.log &

Если мы перенаправляем ошибки, мы можем зарегистрировать и ошибки и нормальные распечатки.

./run_all_with_logs 2>&1 >> logs/my.log &

Если мы затем выполняем команду в подоболочке, мы можем распечатать код выхода также.

(./run_all_with_logs ; echo "Final Exit Code: $?" ) 2>&1  >> logs/my.log &
3
27.01.2020, 20:50
  • 1
    Да, включая stderr очень важное дополнение. –  P.T. 26.09.2011, 20:11

Код выхода должен сказать Вам, если бы процесс был уничтожен внешним сигналом или вышелся с (надо надеяться, полезный) внутренний код выхода самостоятельно.

Можно развернуть командную строку немного для включения кода выхода (см. другие вопросы для декодирования этого кода выхода):

(./run_all_with_logs ; echo "Final Exit Code: $?" ) >> logs/my.log &

Вы могли сделать это немного более необычным (декодирование статуса выхода, и т.д.).

5
27.01.2020, 20:50
  • 1
    Добавьте волшебное 2> &1, таким образом, Вы регистрируете ошибки также, и Ваш ответ будет еще лучше. –  Johan 26.09.2011, 17:12
  • 2
    @Johan: лучше сохраните изменения минимальными относительно командной строки OP, или Вы смутили бы всех. –  Stéphane Gimenez 26.09.2011, 17:30

Теги

Похожие вопросы