Как создать псевдоним пути к папке на экземпляре Ubuntu EC2?

ubuntu 18.04 on AWS

Я следовал за ответом на stackoverflow, чтобы создать псевдоним пути:

nano ~/.bashrc

alias myfolder='/home/xxx/pms'

Когда я пытаюсь cd

cd myfolder

Я получил:

Данный файл или каталог отсутствует

Но если я использую путь, это работает.

Я не уверен, в чем проблема здесь.

ТИА

1 ответ

Решение

Что вы пытаетесь

Возможно, вы думаете о псевдониме, как он определен и используется в Mac OS.

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

java -jar /usr/local/bin/bfg-1.13.0.jar

Вы можете создать псевдоним под названием bfg в моем профиле Unix (или ~/.bashrc как у вас) вот так

alias bfg='java -jar /usr/local/bin/bfg-1.13.0.jar'

Отныне я могу использовать bfg каждый раз, когда я хочу запустить программу Java.

Что вам действительно нужно

В Ubuntu то, что вы ищете, является символической ссылкой. Символическая ссылка создается с ln команда на Ubuntu (и все другие разновидности Unix). Смотрите следующий пример.

В приведенном ниже примере вы можете увидеть уже существующую папку с именем pms в моей домашней папке.

Таким образом, его абсолютный путь /home/ubuntu/pms,

ubuntu@server:~$ ls -l
total 4
drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 25 11:05 pms

Теперь я перехожу на материнский каталог, где я хочу ссылку, то, что вы думаете как псевдоним, и создаю символическую ссылку с ln -s

ubuntu@server:~$ cd /tmp/
ubuntu@server:/tmp$ ln -s /home/ubuntu/pms myfolder

Теперь я могу изменить каталог на этот псевдоним, как вы понимаете.

ubuntu@server:/tmp$ cd myfolder/
ubuntu@server:/tmp/myfolder$ pwd
/tmp/myfolder

Чтобы было ясно, псевдоним - это совсем другое в Unix & Linux. Символическую ссылку, которую я сделал, можно увидеть, перечислив /tmp каталог, где я его создал.

ubuntu@server:/tmp/myfolder$ cd /tmp
ubuntu@server:/tmp$ ls -l
total 16
lrwxrwxrwx 1 ubuntu ubuntu   16 Mar 25 11:06 myfolder -> /home/ubuntu/pms

Содержание /tmp/myfolder одно и то же /home/ubuntu/pms,

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