Я хочу иметь полный и отсортированный список моей истории bash. Но есть некоторые проблемы:
- При выполнении
history
этого действия список никогда не отображается полностью, а отображаются только 1000 команд. - В моем$ДОМОЙкаталоге есть файл с именем.bash_history который показывает 2000 результатов.
Когда я хочу сделать сортировку.текст файл из моей истории я делаю:
history | sort > History.txt
Но из-за номеров команды не сортируются в алфавитном порядке, а сортируются по номерам.
Есть ли способ сделать то, что я хочу?
решение1
sort
можно сортировать ввод по полю, указанному пользователем -k
, так что, строго говоря, что-то вроде этого — это то, что вы ищете.
history | sort -k2 > History.txt # or -K3 if you have $HISTTIMEFORMAT, etc set
Кроме того, часто существует разница между тем, что доступно в выходных данных history
команды, и тем, что записано, ~/.bash_history
поскольку последнее не обновляется после каждой команды (обычно обновляется только при выходе из системы), поэтому использование history | sort ..
лучше для предоставления вам текущего представления.
решение2
Как насчет:
cat ~/.bash_history | sort > Sorted_history.txt
Чтобы иметь неограниченную историю bash, взгляните на этот QA:
https://stackoverflow.com/questions/9457233/неограниченная-история-баша