скрипт удаления истории не работает

Я создаю скрипт shelll, который стирает историю команд в терминале. Но скрипт не стирает историю команд в терминале. Я следую приведенной ниже процедуре 1. Мой скрипт содержит следующие строки

#!/bin/bash
history -c

2. Я изменил файл на исполняемый

chmod +x foo.sh

3. Я запускаю скрипт

./foo.sh

, но скрипт не работает и не стирает мою историю команд. Почему?

Обновление: я альтернативно пишу сценарий, чтобы очистить историю. все та же проблема возникает. Мой альтернативный сценарий:

#!/bin/bash
# Bash Shell store history in the file ~/.bashrc
rm -r ~/.bash_history

Это также неясная история команд.

1
задан 25 July 2015 в 10:05

2 ответа

  • rm -f ~/.bash_history (не используют -r!) удалит журнал истории, который в конфигурации по умолчанию большинства дистрибутивов прочитан, когда Вы запускаете новую оболочку. Выполнение этого будет поэтому только влиять на оболочки, которые Вы запускаете после выполнения этой команды. Можно заменить текущую оболочку другим путем выполнения exec "$SHELL", чтобы не создавать новое окно терминала.
  • history -c очищает историю для текущий оболочка и не удаляет ~/.bash_history. Но когда Вы работаете сценарий , текущая оболочка создает новый оболочка для запущения скрипта в и выходы , что оболочка, когда сценарий сделан . Вместо этого для выполнения сценария в текущий оболочка, Вы имеете к источник сценарий. В Вашем случае попытайтесь работать . foo.sh.
3
ответ дан 25 July 2015 в 20:05
  • 1
    @WindowBreaker - You' ll должны изменить порт, на котором слушает клиент. – Android Dev 19 October 2016 в 09:25

Я Вы хотите "очистить наши трассировки" после выхода из оболочки, Вы могли бы хотеть выполнить эти команды из своего сценария выхода из системы, который является ~/.bash_logout файл.

, Возможно, Вы не хотите во всей своей истории команд быть сохраненными, в этом случае можно установить HISTFILESIZE=0 (в Вашем ~/.profile файл, или в оболочке Вы используете).

См. также: http://ubuntuforums.org/showthread.php?t=920530

1
ответ дан 25 July 2015 в 20:05
  • 1
    Я не уверен, что понимаю, Вы имеете в виду игровой клиент Minecraft? – WindowBreaker 19 October 2016 в 09:27

Другие вопросы по тегам:

Похожие вопросы: