Productivity for programmers. Terminal tricks.

This is the four and last part of my discovery different tools, tricks and practices for making programmers more effective.

Again. Learn shortcuts

Use all the power of your shell should save a lot of time. Make sense to spend some time learning it. Here is a list of a few most commonly used.

  • Ctrl + L Clears the screen;
  • Ctrl + C Terminate the command;
  • Ctrl + R Search command history backwards;
  • Ctrl + A go to the start of the command line;
  • Ctrl + E go to the end of the command line;
  • Ctrl + K cut from cursor to the end of the command line;
  • Ctrl + U cut from cursor to the start of the command line;
  • Ctrl + W cut from cursor to start of word;
  • Alt + B move backward one word (or go to start of word the cursor is currently on);
  • Alt + F move forward one word (or go to end of word the cursor is currently on);
  • Alt + D delete to end of word starting at cursor;
  • Alt + C capitalize to end of word starting at cursor;
  • Alt + U make uppercase from cursor to end of word;
  • Alt + L make lowercase from cursor to end of word;
  • Alt + T swap current word with previous;
  • !! run last command;
  • !word – run the most recent command that starts with ‘word’;

Never waste time logging again

$ ssh-copy-id user@host

Use better shell tools

ohmyzsh, fzf, du →ncdu, top →htop, cat → bat

Use tmux for remote session and learn shortcuts

tmux attach || tmux new — doing so, you first try to connect to an existing tmux server, if one exists; if there isn’t one yet, create a new one.

Shortcuts I use often:

  • Ctrl+b d — disconnect;
  • Ctrl+b c — create window;
  • Ctrl+b 0…9 — jump to the window;
  • Ctrl+b p — previous window;
  • Ctrl+b n — next window;
  • Ctrl+b l — get back to the last window;
  • Ctrl+b & — close window;

Splitting windows:

  • Ctrl + b% — split the current panel into two, vertically;
  • Ctrl + b ” — split the current panel into two, horizontally (this is a quotation mark, which is near Enter, not Shift + 2);
  • Ctrl + b → ← ↑ ↓ – switch between panels;
  • Ctrl + b x – close the panel (or you can just type exit in the terminal);

Scrolling:

  • Ctrl+b — scrolling mode;
    • PgUp — page up:
    • PgUp, PgDown — page down;
    • q — exit from scrolling mode;

Forgot sudo? Use !!

$ apt install mc
> Unable to acquire the dpkg frontend lock , are you root?
$ sudo !!

Quick navigation

Add this function into your ~/.bashrc or ~/.zshrc file:

function goto {
   value=cat ~/.links/$1
   cd -P "$value";
 }

Put in your ~/.links directory. The name of the file is your alias, the content of the file is the path to your hot directory. Could be created like this:

$ pwd > ~/.links/prj

Then jump into this directory by goto prj. 

Create more useful aliases in your terminal.

Repeatable commands

$ touch newfile
$ chmod +x $_
$ vim $_

Your own watchers

Utility entr allows you to run some script when files are changing:

$ echo my.sql | entr -p psql -f /_

As usually, everybody is welcome to get me your feedback and add something useful to the list.

Comments

comments

Leave a reply:

Site Footer

Sliding Sidebar

About Me

About Me

Для кого этот блог?

Для тех кого интересуют современные интернет технологи, IT бизнес, стартапы, менеджмент, контроль качества, личная эффективность, мотивация. Здесь я буду писать о том, что в первую очередь будет интересно мне, о проблемах и решениях. О том что пригодилось мне, и возможно будет интересно Вам.

Что заставило меня создать его?

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

Немного о себе.

Мой первый серьезный опыт в IT это работа над desktop приложениями в компании «Эксперт-Софт». У истоков её стояли несколько амбициозных и талантливых молодых людей, с огнем в глазах и желанием работать «как майкрософт». То чем мы там занимались вполне могли бы сегодня назвать «стартапом». Рук было откровенно мало, поэтому приходилось заниматься всем: кодированием на Delphi, написанием скриптов на VBA, дизайном, вёрсткой и поддержкой вебсайта, работой над рекламной полиграфией, проектированием интерфейсов и БД. Работы было много, но запал был велик, команда очень разношерстная, гармонично дополняя друг-друга в решении нетривиальных задач. Благодаря тому что пришлось попробовать многое, постепенно вырисовалось понимание того чем хочется заниматься, и как. Софтверным программированием я был сыт по горло. Массы проблем десктопного софта в вебе просто не было, по определению. Зато был четкий фокус на дизайне, юзабилити, скорости. Поэтому когда пришла пора уходить из «Эксперт-Софт», я без всякого сожаления стал искать работу как разработчик для web. Поскольку городишко у нас не очень большой, выбор был практически предопределен. Так я стал работать в «Оникс-Системз», где и продолжаю работать поныне. За время работы в компании я как разработчик принимал участие в работе над несколькими десятками проектов. Несколько десятков проектов было сделано мною как фрилансером. Самым большим проектом в котором я сыграл роль менеджера, считаю свою семью. Также довольно большой проект мы сейчас поднимаем с командой разработчиков (на данный момент команда состоит из четырех php разработчиков, одного flex кодера и тестировщика). Отсюда, большой интерес к современным практикам и методологиям, разным подходам в управлении командой, повышению эффективности и качества работы. По мере сил, вдохновения и свободного времени, я буду писать об этом.

Если у Вас возникли какие-то вопросы ко мне лично, буду рад если Вы свяжетесь со мной:

e-mail:
skype: denis.sheremetov
Старый сайт, с музычкой и флешом

Прочая онлайновая деятельность: