Например, я могу установить:
gb = cd /media/Dan/evolution
... так что каждый раз, когда я выполняю gb
в bash, я могу cd
в этот конкретный каталог?
Я нашел что-то онлайн: alias
команда. Но кажется, что он не может сделать работу выше.
Возможно ли это сделать? Как?
alias gb='cd /media/Dan/evolution'
posix
жалоба, так что не простоbash
.Ответы:
просто введите:
Чтобы сделать этот параметр постоянным (чтобы он оставался после перезагрузки или открытия другой консоли), добавьте эту строку в файл ~ / .bashrc (при условии, что вы используете bash в качестве оболочки по умолчанию)
источник
Альтернатива псевдонимам
Это определяет функцию оболочки gb, которая не принимает аргументов и выполняет cd / media / Dan / evolution. Как и в случае других предложений, это можно добавить в ~ / .bashrc
источник
type gb
будет работать, если это псевдоним или функция.{ echo 'true() { : ; }' >./script ; . ./script ; command -V true ; command -V /usr/bin/true ; }
-true is a shell function\n/usr/bin/true is /usr/bin/true
- то\n
персонажи были буквальные переводы строк в выводе.Это возможно, и
alias
это команда, которую вы ищете. Например,alias ll="ls -l"
в Bash позволит вам печататьll
вместоls -l
. Обратите внимание, что при установке псевдонима пробелы не используются.man alias
может быть полезным.источник
Кроме того, можно написать программу на C, которая вызывает нужную команду, и сохранить ее в / usr / bin.
Чтобы скомпилировать его, перейдите в каталог, в котором был сохранен исходный код (в bash), и выполните (вам может понадобиться sudo):
После дальнейших исследований здесь , я понял , просто бросать команду
system()
не будет работать на баш , построенном в командах. Вот почему вам нужно создать экземпляр интерактивного bash и отобразить в нем ваши команды. Это просто слишком сложно и, вероятно, бесполезно, если, например, вы не хотите сократить вызов сценария оболочки (some_script
вместоsh ~/radgeRayden/Scripts/some_script
).Ссылка на функцию system ()
источник
sh -c "cd /media/Dan/evolution"
не работает. Подсказка: subshellcd
/ subshell, не говоря уже о том, что является преимуществом в обертывании команды оболочки в c-программе, когда вы можете так же легко (или более просто) поместить эту команду в сценарий оболочки?