Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: .bash_history  (Прочитано 1989 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн akhmylin

  • Автор темы
  • Любитель
  • *
  • Сообщений: 94
  • дают - бери, бьют - беги
    • Просмотр профиля
.bash_history
« : 19 Августа 2014, 13:23:09 »
проблема в следующем. имею следующие настройки в .bashrc:
export HISTTIMEFORMAT="%h %d %H:%M:%S "
export HISTSIZE=10000
export HISTFILESIZE=10000
shopt -s histappend
PROMPT_COMMAND='history -a'
export HISTCONTROL=ignoreboth:erasedups
export HISTIGNORE="ls:ps:history"
shopt -s cmdhist
shopt -s cdspell
По идее в .bash_history не должно быть повторения уже введенных команд и строк, за это отвечает export HISTCONTROL=ignoreboth:erasedups, но дублирующиеся команды все же появляются. И команда history -cw по идее должна очищать .bash_history, но она этого не делает.
http://cs-game.on.ufanet.ru/smile.files/dyr6uq.gif
Linux захватывает вселенную, а Tux становится ее императором

Оффлайн bastion

  • Любитель
  • *
  • Сообщений: 94
  • Python / Qt
    • Просмотр профиля
    • Искусство креативного массажа
Re: .bash_history
« Ответ #1 : 19 Августа 2014, 14:23:15 »
Попробуй вместо export HISTCONTROL=ignoreboth:erasedups, вот так
HISTCONTROL=ignoredups:erasedups
shopt -s histappend
PROMPT_COMMAND="history -n; history -w; history -c; history -r; $PROMPT_COMMAND"
« Последнее редактирование: 19 Августа 2014, 14:32:23 от bastion »
Готов взяться за любую работу, при условии, что за нее не нужно приниматься прямо сейчас

Оффлайн akhmylin

  • Автор темы
  • Любитель
  • *
  • Сообщений: 94
  • дают - бери, бьют - беги
    • Просмотр профиля
Re: .bash_history
« Ответ #2 : 20 Августа 2014, 18:18:57 »
В опцию ignoreboth уже входит ignoredups, поэтому толку от этого мало. Самое интересное, что мои настройки отлично работают в терминале, дубликаты не сохраняются, hisory -cw очищает историю, НО ТОЛЬКО ТЕРМИНАЛА. В сам же файл ,bash_history все записывается и дублирующие команды тоже. После перезапуска bash всё что находилось в bash_history загружается вновь, а мне этого не надо!!!! Как сделать так чтобы изменения происходили не только в терминале, но и в bash_history. И можно по подробнее об опциях history, если можно на русском, кое-что нашел, но на английском.
http://cs-game.on.ufanet.ru/smile.files/dyr6uq.gif
Linux захватывает вселенную, а Tux становится ее императором

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: .bash_history
« Ответ #3 : 20 Августа 2014, 18:29:04 »
если перезагрузка reboot не сохранить, а сохранить.
reboot;exit
Wars ~.o

Оффлайн akhmylin

  • Автор темы
  • Любитель
  • *
  • Сообщений: 94
  • дают - бери, бьют - беги
    • Просмотр профиля
Re: .bash_history
« Ответ #4 : 20 Августа 2014, 18:35:08 »
а можно по подробнее пожалуйста, если честно я не понял. Писать reboot;exit в bash или что делать??????
http://cs-game.on.ufanet.ru/smile.files/dyr6uq.gif
Linux захватывает вселенную, а Tux становится ее императором

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: .bash_history
« Ответ #5 : 20 Августа 2014, 18:53:56 »
не, я сам, ребут стоит.
пример
(Нажмите, чтобы показать/скрыть)
лучше ребут и выход.
(Нажмите, чтобы показать/скрыть)
будет сохранить хистору.
Wars ~.o

Оффлайн akhmylin

  • Автор темы
  • Любитель
  • *
  • Сообщений: 94
  • дают - бери, бьют - беги
    • Просмотр профиля
Re: .bash_history
« Ответ #6 : 20 Августа 2014, 19:31:16 »
И все же можно по конкретнее, где писать reboot; exit. И можно пожалуйста без слэнга, я совсем новичок, хочется побороть bash
http://cs-game.on.ufanet.ru/smile.files/dyr6uq.gif
Linux захватывает вселенную, а Tux становится ее императором

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: .bash_history
« Ответ #7 : 20 Августа 2014, 19:43:33 »
Цитировать
history -cw по идее должна очищать .bash_history, но она этого не делает.
ааа фантастика, а файл живой? ))
Wars ~.o

Оффлайн akhmylin

  • Автор темы
  • Любитель
  • *
  • Сообщений: 94
  • дают - бери, бьют - беги
    • Просмотр профиля
Re: .bash_history
« Ответ #8 : 21 Августа 2014, 03:27:57 »
файл живой, куда он денется. Только history -cw очищает историю терминала, а не .bash_history.

Пользователь решил продолжить мысль 21 Августа 2014, 20:09:22:
Решение найдено!!!
настройки .bashrc:
export HISTTIMEFORMAT="%h %d %H:%M:%S "
export HISTSIZE=100000
export HISTFILESIZE=100000
shopt -s histappend
PROMPT_COMMAND='history -a'
export HISTCONTROL=ignoreboth:erasedups
export HISTIGNORE="ls:ps:history"
shopt -s cmdhist
shopt -s cdspell

Далее там же прописываем такой alias :
alias exit='rm -f $HISTFILE && unset HISTFILE && exit'
И когда заканчиваем сеанс bash просто пишем exit и файл .bash_history очищается без проблем. Вуаля!!!!!!!!!!!!
« Последнее редактирование: 21 Августа 2014, 20:09:22 от akhmylin »
http://cs-game.on.ufanet.ru/smile.files/dyr6uq.gif
Linux захватывает вселенную, а Tux становится ее императором

 

Страница сгенерирована за 0.052 секунд. Запросов: 25.