...

воскресенье, 1 декабря 2013 г.

Настроим Ubuntu shell под себя

Итак. Абстрагируемся от мощных высокотехнологичных постов на хабре — я им апплодирую. Но жизнь рядового программиста начинается с его рабочего места, куда он неустанно возвращается снова и снова.

Если это про вас. Если вы хотите добавить в свою жизнь немного изюминки — отвлекитесь на минутку, расслабьтесь и открывайте хабракат!

Большинство из нас работают в среде Ubuntu (Linux). Это стало своего рода стандартом для многих веб-разработчиков, это как один раз попробовать, и понять… Вся магия на начальных порах ограничивается возможностью установки пакетов (программ) из-под эмулятора коммандной строки Terminal, затем интерес утихает. Но, задайтесь пожалуйста вопросом: что для вас представляет окно Терминала? Безцветная, бездушная оболочка с базовым набором комманд? Или друг и помошник в повседневных делах? Открою вам маленький секрет: лично я адаптирую его под каждый свой новый проект. И всё благодаря Алиасам (alias).


Конечно, многие гуру тут снисходительно пожмут плечами, но давайте не будем уж больно торопиться и делать поспешные выводы. Ведь порой самые очевидные вещи могут принимать разные формы и выражения, и одной из таких форм я и хочу с вами поделиться.


Открываю для вас свой Terminal (Ctrl+Alt+T):


terminal_window


Думаю, мало кто из читателей видит то же самое. Настроен автоматический переход в корень проекта. Выводится список определенных комманд, которые мне наиболее часто приходится использовать в работе. Конечно, это личное дело каждого, но у меня это следующий список:


Пароли


Обычно, клиент/заказчик высылает нам логины/пароли к своим сервисам. В любой момент времени, мне достаточно вызвать комманду pass чтобы вывести на консоль все пароли имеющие отношение к проекту:


image


Удобно, не правда ли?



alias pass=printSecure

printSecure() {

# вы же не будете против, если я вставлю сюда палитру:

green="\e[32m"

cyan="\e[36m"
blue="\e[34m"
lightblue="\e[94m"
black="\e[30m"
red="\e[31m"
darkgray="\e[90m"
bold="\e[1m"
norm="\e[0m"

title=$bold$black
url=$blue$norm
l=$red
p=$cyan

echo -e "
$title AWS Storage $url http://aws.amazon.com
$l login@gmail.com $p password
$title Heroku WebServers $url https://api.heroku.com/login
$l login@gmail.com $p password
"
}


Email в буффер обмена


Везёт людям, с емэйлом вида «a@a». Я конечно утрирую, но по долгу службы мой корпоративный емэйл имеет длинну в 29 символов.

Частый ввод такого емэйла для меня всегда являлся рутиной, а напоследок заканчивался тем что я впопыхах путал как назло местами две соседние буквы.

Проблема исчезла как только я создал алиас на копирование своего емэйла в буффер обмена. Алиас называется лаконично «m», и стоит не более секунды моего времени: Alt+Ctrl+T -> m -> Enter -> Alt+F4


image



mailToClipboard() {
echo "vitalyp@softwareplanet.uk.com" | xclip -selection clipboard
echo "email vitalyp@softwareplanet.uk.com in clipboard buffer!!"
}
alias m=mailToClipboard


Wiki Manual


Это мануал по всем возможным командам, которые я использую во время деплоев / удаленных бэкапов и т.д. Пишется один раз, но здорово разгружает мозги. У меня копия такого мануала находится ещё в текстовичке, и открывается через блокнот по алиасу «snips» (всё-же из блокнота легче копипастить), но можно юзать и консольный вариант:


image


Edit hosts / .bashrc


Когда какое-то действие выполняется часто, бывает неплохо автоматизировать этот процесс.

С hosts файлом всё понятно, а вот .bashrc я часто открывал, когда хотел добавить какой-то новый безумный алиас к своему терминалу:



alias edit="gedit ~/.bashrc&"
alias hosts="sudo gedit /etc/hosts&"


С помощью амперсанта, файлы открываются в отдельном потоке, а консоль — освобождается для дальнейших инструкций.


Edit temp / daily


Темповый файл для многих может выполнять роль вспомогательного буффера. Но я даже не знаю с какого края экрана он у меня находится, потому-что у меня есть алиас:



alias temp="gedit ~/Desktop/temp&"


В файл Daily я иногда вношу заметки, которые нужно будет не забыть включить в свой дневной отчёт (daily report) заказчику:



alias daily="gedit ~/Desktop/daily&"


— Боюсь, что на вступительную часть хватит. Добавлю только, что я использую в работе помимо этих типов, ещё GUI-шные алиасы, которые выводят оконные диалоги на экран. Если кому интересно, могут попробовать установить пакет «zenity». Popup окно создаётся так:



zenity --error --title="Service checker" --text="$service1 is not running! Start it, and click OK."


— Ну вот, а я буду надеятся что эта статья хоть кому-то была интересна.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at fivefilters.org/content-only/faq.php#publishers.


Комментариев нет:

Отправить комментарий