İnsanlar ekleyerek ileri sürmüşlerdir .
için PATH
o yanlışlıkla dünya yazılabilir dizinde ekilen kötü niyetli bir programı çalıştırmak riski oluşturduğundan tehlikeli olan. Eğer size ait olan bir kaç dizinleri çalıştırılabilir programları var ve sadece sizin tarafından yazılabilir Ama eğer, o zaman güvenli (oldukça güvenli?) Var koymak olanlar yönetmen (ler) içine PATH
gibi bir satır ekleyerek,
PATH=$PATH:~/dev/myprog1:~/dev/myprog2
sizin için ~/.bashrc
dosyanın. Elbette bu, bir programı bu dizinlerden birinden dosya sisteminin herhangi bir yerinden çalıştırabileceğiniz anlamına gelir. Örneğin, yazıp cd /etc
yazabilirsiniz foo
ve çalıştırılabilir ~/dev/myprog1/foo
. Bu, dizinlerin birinde birden fazla programda aynı ada sahip programların bulunamaması gibi küçük dezavantajlara sahiptir. Özellikle, foo
her ikisinde de programlanmışsa ~/dev/myprog1
ve ~/dev/myprog2
bir yol belirtme dışında ikincisini çalıştıramazsınız. Aynı şekilde bir ~/dev/myprog1/cat
- varsa - ama neden istiyorsun?
Başka bir yaklaşım, bunu yaptığınız birkaç programınız varsa, onlar için takma adlar tanımlamaktır:
alias gizmo='./gizmo'
alias gonzo='./gonzo'
Ya da diğer isimleri arayabilir .gizmo
ve .gonzo
daha sezgisel bulursanız.
Aslında, bunun bir dereceye kadar, .
içine koymakla aynı güvenlik riski vardır PATH
. Kötü niyetli bir kullanıcı sizi okuyabilir .bashrc
ve takma adlarınızı görebilirse, o zaman çalıştırmanız umuduyla kötü amaçlı yazılım olarak adlandırılan gizmo
ve gonzo
rastgele dizinlere yerleştirebilir. Bu mutlak yol adlarını kullanmak daha iyidir:
alias gizmo='~/dev/myprog1/gizmo'
alias gonzo='~/dev/myprog2/gonzo'
Bu arada, çalıştırılabilir bir dosyayı adlandırmaktan kaçınmalısınız test
, çünkü bu bir shell yerleşik komutudur ve bir programı yalnızca bu yolu kullanarak bir yol ya da başka bir numara belirterek çalıştırabilirsiniz.