Bunu çalıştırmam söylendi:
./yiic message ./app/messages/config.php
Ama ./anlamını anlamıyorum, kimse lütfen açıklığa kavuşturur.
Not: İnanın bana, bunu google'da yapamayız. Denedim:
./ anlamı ./ ubuntu
Hiçbir şey ile aynıydı. :(
Bunu çalıştırmam söylendi:
./yiic message ./app/messages/config.php
Ama ./anlamını anlamıyorum, kimse lütfen açıklığa kavuşturur.
Not: İnanın bana, bunu google'da yapamayız. Denedim:
./ anlamı ./ ubuntu
Hiçbir şey ile aynıydı. :(
Yanıtlar:
./ya da sadece .geçerli dizin için unix kısaltmasıdır.
Geçerli dizin PATH'inizde değilse onu belirtmeniz gerekir. PATH, bir programı çalıştırdığınızda aranan klasörlerin listesidir. (Yazarak belirleyebilirsiniz echo $PATH.) PATH'inizde yürütülebilir bir dosya yoksa, çalıştırmak için içinde bulunduğu klasörü belirtmeniz gerekir. Dosyaya tam yolunu vererek, ancak dosya içindeyse, bunu yapabilirsiniz. Geçerli dizini, ./steno olarak kullanabilirsiniz .
Benzer şekilde, ../ya ..da geçerli olanın üzerindeki dizin için kısaca.
.. Bunun nedeni, geçerli dizinin otomatik olarak kullanılmasının bir güvenlik deliği olmasıdır. Başka birisinin bir program lsyaptığını cd, onun ismini ve dizini ls
Komut satırında her dizin olarak adlandırılan iki "özel dizinleri" vardır .ve ... Bunlar sırasıyla geçerli dizin ve geçerli dizini içeren dizin içindir.
Örneğin, cd ./more/directory/namessadece "geçerli dizine başla ve yola devam et" anlamına gelir. Benzer şekilde, komut cd .."dizini yukarı değiştir" anlamına gelir.
Geçerli dizininizin adını istiyorsanız, pwdkomutu kullanabilirsiniz . Ayrıca, -abayrak için kullanırsanız, lsbu iki özel dizini görebilirsiniz. Yani, ve ls -aile başlayan bir liste çıkarır ....
Diğerleri zaten ne anlama geldiğini .ve ne ..anlama geldiğini açıkladı (sırasıyla geçerli dizin ve ana dizin). Bu, tüm yol adları için geçerlidir.
Bir terminal açtığınızda, genellikle ana dizininizde başlarsınız: ~(genişler /home/username). Aşağıdaki yolları geçerli çalışma dizini olan sağlayarak, tüm eşdeğerdir /home/username:
/home/username.../username../../home/username../../../home/username(üst dizin /hala /)./././././. (... içindeki geçerli dizindeki geçerli dizin ...)./ (dizinler için sondaki eğik çizgilere izin verilir)/home////username/// (ve böylece çoklu eğik çizgiler)Do not karıştırmayın ./programile . program. ./programYürütme bit setiyle geçerli dizindeki bir dosyayı çalıştırır . ./programbash şeydir ve alternatif olarak o anki dizindeki dosyadan source ./programbash komutlarını okuyan programve bunları geçerli kabukta çalıştıran şekilde yazılabilir .
Size sadece çalıştırabilirsiniz neden merak ederse gedityerine /usr/bin/geditdeğil programyerine ./programveya /home/username/programilgili soruya bakın:
Den başlamak demektir current directory path.
Diyelim ki böyle bir şeyiniz var path:
/usr/ /usr/bin/ /usr/local/bin
ve içinde /usr/bin/bir de çalıştırılabilir dosya var yiic.
Sorun çıkarırsanız yiic, bir tane başlayacak /usr/bin/.
Düzenleyerek ./yiic, sisteme bu yürütülebilir dosya için geçerli dizine bakmasını söyleyin.
/home/mysuser/ve orada kullanarak oraya gidiyorum cd /home/myuser. Bir kere içeri girince, sadece yiic yapmanın işe yarayacağına inandım çünkü bu dizinde aradım. Ama emir vermeyeceğini söylüyor. Aynı şeyi yaparsam ve ./ kullanırsam düzgün çalışır. Lütfen biraz daha açıklığa kavuşturur musunuz?
.bir işlem yaparken görebileceğiniz bir klasör içindeki özel bir dosyadır ls -la;)