Как сделать сценарий cls в стиле Windows для Ubuntu?

Как создать команду cls-type для Ubuntu/Linux, которая не только очистит экран эмулятора терминала, но и сделает так, чтобы вы не могли прокручивать вверх, чтобы увидеть, что вы очистили? Обратите внимание, что clear Команда не исключает текст. Это просто прокручивает это из поля зрения. Кроме того, любая информация о настройке в качестве общесистемной команды, называемой cls было бы полезно (особенно хорошо для пользователей Windows, приходящих в Linux).

2 ответа

Решение

Как уже упоминалось @user2962794, команда для очистки терминала выдает управляющий код \033c, Это escape-последовательность ANSI VT-100 для сброса терминала в исходное состояние (RIS, см. Здесь) и является символом ASCII "Escape" (\033) с последующим c,

Поэтому, чтобы очистить свой терминал, все, что вам нужно, это один из

printf printf "\033c"

или же

echo -ne "\033c"

Чтобы сделать это проще, вы можете создать для него псевдоним. Добавьте эту строку в свой ~/.bashrc:

alias cls="printf '\033c'"

Теперь откройте новый терминал и запустите cls очистит это. Обратите внимание, что если там уже есть команда с именем clsэто заменит его. Убедитесь, что вы выбрали уникальное имя, чтобы избежать этого.

Сделайте сценарий, назовите его clsсделать его исполняемым (chmod +x cls), и дайте ему это содержание:

#!/bin/bash

printf "\033c"

Прежде чем добавить его в свой путь, вы можете убедиться, что нет программ, вызываемых cls уже:

update-alternatives --config cls

Затем, чтобы добавить его к вашему общесистемному пути, поместите ваш скрипт в безопасное системное место, например /opt/bin/cls и использовать update-alternatives чтобы добавить его в путь для всех пользователей:

sudo update-alternatives --install /usr/bin/cls cls /opt/bin/cls 0

Вы можете разместить свой скрипт в ~/bin (тильда обозначает ваш домашний каталог), чтобы он находился в пути одного пользователя (если вам нужно было создать bin каталог, вам нужно перезагрузить компьютер, прежде чем он будет в вашем пути. В этом случае не нужно ничего делать с альтернативами обновления.

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