Попытка:
echo 100 > /proc/sys/vm/dirty_ratio
Это должно отложить блокирование, пока вся Ваша свободная память не используется для кэша записи.
Следующие работы в ударе 4.2:
list=( /<root_path>/<process_two_path>/logs/* )
echo "${list[-1]}"
Если Ваш удар является более старой версией:
list=( /<root_path>/<process_two_path>/logs/* )
echo "${list[${#list[@]}-1]}"
POSIXly:
set -- /<root_path>/<process_two_path>/logs/*
shift "$(($# - 1))"
printf '%s\n' "$1"
Так как Вы упоминаете zsh
:
print -r /<root_path>/<process_two_path>/logs/*([-1])
Используйте шарик удара в ударе для цикла. Как это:
for filename in <logdir>/*; do :; done; echo "$filename"
Это зависит от того, что удар делает расширение шарика, отсортированное в алфавитном порядке. Прочитайте руководство удара для получения дополнительной информации. Обратите внимание, что это зависит от LC_COLLATE. Это также зависит от того, что переменная filename
все еще содержит последнее значение после того, как цикл завершился.
Если Вы хотите имя файла с самой старой меткой времени, можно сделать это как это:
for filename in <logdir>/*; do echo "$filename"; break; done
- 1 значение по умолчанию в конвейерах, и вывод ls должен уже быть отсортирован:
ls | tail -n1
Если другие искали, как вставить первый или последний результат в интерактивном режиме, можно связать полный меню или menu-complete-backward в .inputrc:
"\e\t": menu-complete
"\e[Z": menu-complete-backward # shift-tab
Если show-all-if-ambiguous включен, set completion-query-items 0
удаляет подсказку, когда существует 101 или больше результат и set page-completions off
отключает пейджер.
-1
). Это было добавлено в ударе 4.2. RHEL5 является, вероятно, самым старым поддерживаемым основным доступным дистрибутивом предприятия, и он использует удар 4.2.20. – Patrick 06.04.2013, 00:14bash
имейте:"${list[@]: -1}"
как вksh93
([-1]
прибывает изzsh
). – Stéphane Chazelas 06.04.2013, 00:263.2
. RHEL 3 и 4 все еще поддерживаемый под расширенной жизнью. – jordanm 06.04.2013, 00:51