Я хотел использовать некоторые временные параметры с командой find, и я продолжал получать сообщения об ошибках "daystart" и "newermt".
find . -type f -newermt "today 7:00:00" ! -newermt "today 17:00:00"
Я запустил man find top, чтобы посмотреть, как правильно использовать параметры, и у него нет этих опций на странице man. Я думаю, мне нужно обновить мою находку. Тем не менее, как я могу узнать, какую версию поиска я использую? Когда я смотрю версию поиска bash find на странице поиска Google, я получаю только способы найти текущую версию bash, а не версию find.
Я бегу в красной шляпе. Это на вашей странице руководства, потому что это не на моей. и более того, не работает. Я перечислил, как я использовал это - это правильный способ использовать это?
—
Каперс
находить . типа f -newermt "сегодня 7:00:00"! -newermt "сегодня 17:00:00" найти: недопустимый предикат `-newermt '
—
capser
Нет, я ошибся Был добавлен в 4.3.3.
—
Игнасио Васкес-Абрамс
4.3.3 является версией bash - поэтому вы не можете разархивировать новый исполняемый файл find, вам нужно выпустить совершенно новую версию bash - команда find не зависит от оболочки - мне нужно обновить оболочку, чтобы получить команду ?
—
Каперс
Чтобы уточнить:
—
Камиль Мачоровски
find
это не встроенная Bash, это отдельный исполняемый файл, он не имеет ничего общего с версией Bash. В моем Debian type find
возвращается find is /usr/bin/find
; потом apt-file search /usr/bin/find | grep "find$"
уступает findutils: /usr/bin/find
. Далее dpkg -l | grep findutils
рассказывает, какая у меня версия. Я не знаю Red Hat. Вы должны, вероятно, использовать yum
или что-то, чтобы выяснить, какая у вас версия.