У меня есть 2 виртуальные машины. Один из них - Debian Lenny, а другой - Ubuntu. В разных папках Debian есть скрипт с именем «два» (имя «два» одинаковое, но содержимое в разных папках немного различается), и когда я захожу в эту папку, мне просто нужно ввести два и ввести, чтобы сделать это бежать. Когда я скопировал тот же скрипт в Ubuntu, даже после предоставления ему разрешений на выполнение, он все равно не запускается, просто введя два. Я должен напечатать. / Два, чтобы заставить его работать. Можно ли как-нибудь набрать два в их соответствующих папках, и скрипы будут работать без ./?
1
ls
в нем исполняемым файлом . Затем, если вы зайдете в их каталог и напечатаетеls
, вы запустите их программу с любым разрешением. Вы должны печатать./
по причине..
в начале $ PATH, а не в конце.dir
по привычке, а потом,ls
когда получают ошибку. Если кто-то знает, что вы делаете это, он может создать программу под названиемdir
.dir
это тоже часть coreutils. Но я понимаю вашу точку зрения.rm -rf *
и ждал некоторое время , в/tmp
, в типичных именах опечатки , какsl
,pc
,cgg
...Ответы:
Вы можете добавить текущий каталог к своему пути:
При этом текущий каталог всегда будет в пути поиска оболочки.
Вы можете сохранить это, поместив код выше в свой
.bashrc
или.bash_profile
источник
~/.bash_profile
,~/.bash_login
,~/.profile
и загрузит первый найденный (от Баш руководства). Файл/etc/profile
загружается, только если Bash вызывается с--login
параметром, и это происходит в первую очередь. Как вы сказали, что используете Ubuntu, не могли бы вы проверить, действительно ли вы используете Bash? Если я прав, то оболочкой Ubuntu по умолчанию является Dash.Вы должны добавить программу / каталог в ваш путь .
Путь, заданный в .bash_profile, будет установлен только в оболочке входа в bash (
bash -l
). Если вы введете свой путь,.profile
он будет доступен для всего сеанса рабочего стола. Это означает, что даже metacity будет использовать его.Например
~/.profile
:Кстати, вы можете проверить переменную PATH процесса, посмотрев на его среду в
/proc/[pid]/environ
. (замените [pid] числом изps axf
)источник
echo $PATH
.Вместо добавления. к ПУТИ вам лучше добавить каталог, в котором находится «два». Например, если два действительно / usr / local / bin / two, то вы бы сказали
PATH = $ PATH: / USR / местные / бен
И если у вас может быть много разных программ, таких как две, то вы, возможно, захотите поместить их все в общий каталог вместо того, чтобы добавлять новый каталог в путь для каждой из них.
источник