В Linux в качестве root вы можете использовать либо
ss -ptan
или
netstat -ntulp
чтобы получить список всех запущенных процессов, которые «слушают» (в данном случае tcp, замените «t» на «u» для udp ).
Таким образом, один лайнер для уничтожения процесса, прослушивающего порт 80, будет выглядеть примерно так:
ss -tanp | grep 80 | head -1 | sed 's_.*pid=\(.*\),.*_\1_' | xargs kill
Псевдонимы предназначены для команд -вам нужна простая переменная, которая ссылается на ваше длинное имя каталога. Добавьте что-то подобное в ваш ~/.bashrc:
shortdir="/super/long/directory/name"
Теперь такие команды, как ls "$shortdir"
или du "$shortdir"
, дадут вам то, что вы хотите.
Когда вы создаете символическую ссылку, она позволяет вам получить доступ к каталогу из того места, где вы его создали. Например, в вашем случае это позволит вам сделать cd /usr/local/bin/projects
вместо cd /projectdir
, что, в зависимости от длины пути к вашему проекту, может сэкономить несколько нажатий клавиш.
Сравните, например, cd /my/super/very/long/path/to/projectdir
с cd ~/projectdir
, если вы ранее создали символическую ссылку на свой домашний каталог с помощью ln -s /my/super/very/long/path/to/projectdir ~/projects
.
Помимо этого, решение ajgringo619 — единственное, что приходит на ум.
В bash у вас есть переменная CDPATH
. Об этом говорится следующее:
CDPATH The search path for the cd command. This is a colon-separated list of directories in which the shell looks for destination directories specified by the cd command. A sample value is ".:~:/usr".
Если у вас есть /my/super/very/long/path/to/projectdir
, то если вы поместите /my/super/very/long/path/to/
в CDPATH
, cd projectdir
из любой точки иерархии заставит вас перейти к конкретному /my/super/very/long/path/to/projectdir
.
У него есть недостатки (возможные коллизии ), но я использую его, например, для указания на вершину всех моих рабочих деревьев git, чтобы я мог переключаться на них, просто зная (или фактически выполняя автозаполнение )их имя, независимо от того, где они действительно хранятся.
Это, конечно, решает только часть проблемы, связанную с "простым способом cd", а не глобальную проблему, связанную со ссылкой на какое-либо имя каким-то произвольным символическим способом для всех команд, с которыми нужно работать.
Вы также можете взглянуть на pushd
/ popd
, они могут помочь в некоторых сценариях.