Когда вы используете клавишу «вверх» в терминале Linux, вы можете снова использовать предыдущие команды. Отличная особенность. Однако я начал регистрировать mysql в mysql с подробными сведениями в команде.
Извините, я совсем забыл упомянуть, что использую bash.
Фрэнк Вилеа
16
Поскольку этот вопрос закрыт, я не могу добавить его в качестве ответа. Вы можете сказать bash не сохранять историю для определенного сеанса с помощью этой команды:export HISTFILE=/dev/null
Крис Эберле
1
Я также могу добавить это: не вводите конфиденциальную информацию в командную строку - дождитесь приглашения: D
hummingBird
Ответы:
343
Вы можете очистить свою историю bash следующим образом:
Действительно, как этот ответ - это вступает в силу немедленно, а не удаление, .bash_historyкоторое требует перезапуска оболочки для вступления в силу.
Mikemaccana
1
Не работает на моей машине Ubuntu 14.04. История просто появляется с новым терминалом. Все , что работает это >~/bash_history. Для этого придется перезапустить терминал.
Аникет Тхакур
Также работает на Mac OS X El Capitan (протестировано на версии 10.11.2), но вам необходимо добавить следующую строку в ваш ~/.bash_profile:, export SHELL_SESSION_HISTORY=0затем выполнить a source ~/.bash_profileи завершить выход и перезапустить приложение Terminal. Если вы хотите понять, что делает эта команда экспорта, то вам обязательно нужно проверить следующую ссылку: superuser.com/questions/950403/…
King-Wizard
1
не только -c достаточно? В руководствах говорится, что -c очищает список истории, удаляя все записи. -w записывает текущую историю в файл истории и добавляет их в список истории. Просто -c отлично работает.
Кан
24
Если вы используете bash, то история терминала сохраняется в файле с именем .bash_history. Удалите его, и история исчезнет.
Однако для MySQL лучше не вводить пароль в командной строке. Если вы просто укажете опцию -p без значения, вам будет предложено ввести пароль, и он не будет зарегистрирован.
Другой вариант, если вы не хотите каждый раз вводить пароль, это сохранить его в файле my.cnf. Создайте файл с именем ~ / .my.cnf примерно так:
[client]
user =<username>
password =<password>
Обязательно измените права доступа к файлу, чтобы только вы могли прочитать файл.
Конечно, таким образом ваш пароль все еще сохраняется в текстовом файле в вашем домашнем каталоге, так же, как он был ранее сохранен в .bash_history.
+1 за уточнение -p. Это абсолютно правильный подход к этой проблеме
andyb
2
На самом деле, в моей системе Linux bash запоминает историю и воссоздает файл при выходе из системы. Вы должны войти в систему, удалить файл, войти снова, выйти из первой оболочки, удалить файл, а затем выйти из второй оболочки.
Цао
Спасибо что подметил это. Я подумал, что я умен, используя опцию -p + пароль непосредственно в команде, потому что гораздо быстрее было просто нажать стрелку вверх, так как у меня очень длинный пароль. Время пересмотреть ..
Фрэнк Вилеа
5
Не забудьте, unset HISTFILEчтобы текущая история не сохранялась.
Игнасио Васкес-Абрамс
Я отредактировал свой ответ и добавил решение, которое не позволяет вводить пароль каждый раз.
export HISTFILE=/dev/null
Ответы:
Вы можете очистить свою историю bash следующим образом:
history -cw
источник
.bash_history
которое требует перезапуска оболочки для вступления в силу.>~/bash_history
. Для этого придется перезапустить терминал.~/.bash_profile
:,export SHELL_SESSION_HISTORY=0
затем выполнить asource ~/.bash_profile
и завершить выход и перезапустить приложение Terminal. Если вы хотите понять, что делает эта команда экспорта, то вам обязательно нужно проверить следующую ссылку: superuser.com/questions/950403/…Если вы используете bash, то история терминала сохраняется в файле с именем .bash_history. Удалите его, и история исчезнет.
Однако для MySQL лучше не вводить пароль в командной строке. Если вы просто укажете опцию -p без значения, вам будет предложено ввести пароль, и он не будет зарегистрирован.
Другой вариант, если вы не хотите каждый раз вводить пароль, это сохранить его в файле my.cnf. Создайте файл с именем ~ / .my.cnf примерно так:
Обязательно измените права доступа к файлу, чтобы только вы могли прочитать файл.
Конечно, таким образом ваш пароль все еще сохраняется в текстовом файле в вашем домашнем каталоге, так же, как он был ранее сохранен в .bash_history.
источник
-p
. Это абсолютно правильный подход к этой проблемеunset HISTFILE
чтобы текущая история не сохранялась.