เมื่อสร้างลิงก์สัญลักษณ์ฉันจะแก้ปัญหา 'ลิงก์สัญลักษณ์หลายระดับ' ได้อย่างไร


15

ฉันพยายามสร้างลิงก์สัญลักษณ์บน Ubuntu 10.04 ((Lucid Lynx)) มันบอกว่า:

me@laptop:~/PHPUnit$ ls
assertions.php      LICENSE      PHPUnit           README.markdown
build.xml           package.xml  phpunit.bat       Tests
ChangeLog.markdown  phpunit      phpunit.xml.dist
me@laptop:~/PHPUnit$ ln -s phpunit /usr/bin/phpunit
ln: accessing `/usr/bin/phpunit': Too many levels of symbolic links

และเมื่อฉัน/usr/bin$ ls php*ฉันเพิ่งได้รับ:

php  php5  php-config  php-config5  phpize  phpize5

ฉันพยายามสร้างมันขึ้นมาก่อนและฉันไม่แน่ใจว่าฉันรันคำสั่งผิด ...


พยายามระบุเส้นทางแบบเต็มของ phpunit
Heisenbug

คำตอบ:


30

ระวังว่าการใช้ln -s target /path/symlinkงานtargetจะถูกตีความว่าสัมพันธ์กับpathไดเรกทอรี (ที่ symlink จะอยู่) คำสั่งของคุณจะสร้าง symlink ที่ชี้ไปที่ตัวมันเอง ดังนั้นการค้นหาเส้นทางจะเกิดขึ้นทุกครั้งที่มีการเข้าถึง symlink

ในกรณีของคุณอาจ/usr/bin/phpunitมีอยู่แล้วและกำลังวนซ้ำตัวเอง ลบออกก่อนและเปลี่ยนคำสั่งของคุณเป็น:

me@laptop:~/PHPUnit$ ln -s ~/PHPUnit/phpunit /usr/bin/phpunit

(การใช้เป้าหมายที่แน่นอนน่าจะดีที่สุดที่นี่)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.