Раньше я использовал cmd в окнах, а в командной строке я много использовал cls. Это похоже на команду clear, используемую в Linux, но она полностью очищает экран.
Если вы используете команду clear, она просто прокручивает вниз, так что вы не видите команду вы, где работаете.
Мне нравится как много, но мой вопрос: как мне получить команду cls, которая очищает экран и не может просматривать, чтобы увидеть команду вы где работаете?
Добавьте эту строку в ~/.bashrc (т. е. файл с именем .bashrc, расположенный в вашей домашней папке - вы можете увидеть его в Наутилусе, нажав Ctrl + H):
alias cls='printf "\033c"'
Теперь команда cls очистит экран, как в Windows. Он вернет вас к началу окна терминала, без текста, показанного выше. (Это не приведет к удалению истории команд оболочки.)
Это работает, потому что:
.bashrc запускается каждый раз при запуске оболочки bash. Команда alias определяет команду cls для запуска команды, указанной в правой части. Команда printf записывает символы в терминал. Он принимает коды эвакуации. Октал 033 - это символ, используемый для сигнализации начала управляющего кода терминала. Управляющий код c указывает терминалу очистить себя. Итак, с этой модификацией .bashrc. запуск cls отправляет необходимые данные на терминал, чтобы сообщить об этом, чтобы очистить себя.В текущем окне терминала просто введите следующее:
printf "\033c"
Если цель состоит в том, чтобы избежать случайного повторного открытия истории команд, reset может быть жизнеспособным выбором.
Однако помните, что по умолчанию оболочка также записывает вашу историю команд в файл - это также доступно для обнаружения. Если вы хотите, чтобы другие люди не просматривали вашу историю команд, вы также должны их очистить.
history -c # очистить историю
cls работает, очищая буфер, который фиксирован 25 или 50 строк в случае DOS и Windows соответственно. Вы можете добиться чего-то подобного, написав так много строк в буфере, что оно переполняется (2000 - это типичное значение), но тогда reset также является жизнеспособным вариантом, как сказал @lgarzo.