Если вы не используете macOS, дата создания файла не сохраняется. В любом случае эта концепция плохо определена, поскольку при редактировании файла часто создается новый файл, который заменяет предыдущую версию. Записывается дата последнего изменения файла (включая как первоначальное создание, так и любое последующее редактирование).
Самый простой способ отсортировать файлы по времени изменения - запустить zsh (в отличие от других, менее мощных командных интерпретаторов, таких как bash, ksh или fish). В zsh вы можете использовать квалификаторы glob , такие как Om
, для сортировки файлов по времени модификации (сначала самые старые, сделайте это Om
, чтобы сначала получить младшие).
grep _rlnAveragePmax *model*(Om)
Это дает желаемый результат, поскольку grep
просматривает файлы в порядке, указанном в командной строке.
Ради интереса вот решение POSIX, не использующее ни grep
, ниcut
:
#!/bin/sh -
while IFS= read -r line; do
name=${line%[A-Z]*} # remove smallest suffix beginning with uppercase
occ=${line#???} # remove first 3 characters
occ=${occ%?????} # remove last 5 characters
salary=${line##*[!0-9]} # remove largest prefix ending with a non-digit
case $name in
*$1*)
if [ "$2" = occupation ]; then
printf '%s %s\n' "$curr_name" "$curr_occ"
else
printf '%s %s\n' "$curr_name" "$curr_salary"
fi
esac
done