Finder ค้นหาการเชื่อมโยงสัญลักษณ์ที่แตกต่างจาก terminal MacBook Pro Retina OS X 10.9.4


2

ฉันสร้าง symbolic link jboss7 สำหรับฮาร์ดลิงค์ jboss-as-7.1.1.Final-download และทำงานได้ดีใน Finder จากนั้นฉันก็สำรองข้อมูลก่อนที่จะแก้ไข JBoss ...

ln -s jboss-as-7.1.1.Final-downloaded jboss7
cp jboss-as-7.1.1.Final-downloaded jboss-as-7.1.1.Final-downloaded-orig

ต่อมาฉันเปลี่ยนชื่อฮาร์ดลิงก์เป็น jboss-as-7.1.1.Final-download-modified และแทนที่ด้วยการสำรองข้อมูล

mv jboss-as-7.1.1.Final-downloaded jboss-as-7.1.1.Final-downloaded-modified
mv jboss-as-7.1.1.Final-downloaded-orig jboss-as-7.1.1.Final-downloaded

ลิงก์สัญลักษณ์ชี้ไปที่การสำรองข้อมูลอย่างถูกต้องด้วยชื่อไฟล์เดียวกัน (ลงท้ายด้วย -downloaded) แต่ Finder แสดงและปฏิบัติต่อลิงก์สัญลักษณ์อย่างไม่ถูกต้องโดยบอกว่าเป็นชื่อแทนสำหรับโฟลเดอร์ที่ลงท้ายด้วย (-downloaded-modified)

Finder ควรปฏิบัติต่อลิงก์สัญลักษณ์ในลักษณะนี้หรือไม่ ฉันจะอัปเดต Finder เพื่อจดจำลิงก์สัญลักษณ์ตามที่ชี้ไปยังฮาร์ดลิงก์ปัจจุบันได้อย่างไร

จุดด้านข้าง: คำสั่งที่ฉันเขียนโดยใช้เทอร์มินัล tcsh หรือ Finder (จำไม่ได้และประวัติเทอร์มินัลไม่ไปไกลพอที่จะตอบคำถามนี้)

ที่เกี่ยวข้อง: OS X จะไม่สร้างลิงก์สัญลักษณ์ใด ๆ สร้างนามแฝงแทน

คำตอบ:


1

ฉันสามารถทำสิ่งนี้ซ้ำได้เช่นกัน (บน OS X 10.9.4) กรณีที่ง่ายกว่ามีดังนี้:

touch file.txt
ln -s file.txt link.txt
mv file.txt moved.txt
touch file.txt

หาก Finder เปิดให้ทำงานในขณะที่ไดเรกทอรีmvถูกประหารชีวิตแล้วมันจะ (ถูก) ทำตามlink.txtไปmoved.txtจนกว่าจะมีการเริ่มต้นใหม่ ที่น่าสนใจคือคุณไม่จำเป็นต้องใช้ Terminal เพื่อสร้างข้อผิดพลาดนี้เนื่องจากมันใช้กับนามแฝงด้วย:

  1. file.txtสร้าง
  2. file.txtทำให้นามแฝงของ
  3. เปลี่ยนชื่อไปfile.txtmoved.txt
  4. file.txtสร้างไฟล์ใหม่ที่เรียกว่า

พฤติกรรมที่ต้องการสำหรับนามแฝงคือการชี้ไปยังไฟล์ย้าย ( moved.txt) เว้นแต่ไฟล์ใหม่ได้รับการสร้างขึ้นในตำแหน่งเดิม ( file.txtสร้างขึ้นในขั้นตอนที่ 4) แต่พฤติกรรมที่แท้จริงนั้นเป็นเหมือนในตัวอย่างของคุณ: ตัวค้นหายังคงติดตามนามแฝงไปยังตำแหน่งที่ถูกย้ายจนกว่าจะรีสตาร์ท

นี่เป็นข้อผิดพลาดใน Finder วิธีแก้ปัญหาคือการเปิดใช้งาน Finder อีกครั้งหากหน้าต่างที่เปิดอยู่แสดง symlink / alias ในขณะที่คุณย้ายหรือเปลี่ยนชื่อไฟล์เป้าหมาย


ฉันเห็นสิ่งนี้ใน 10.9.5 เช่นกัน
Steve Moser

0

มันแปลก ฉันสามารถทำซ้ำได้ แต่ถ้าฉันตรวจสอบ symlink จริง ๆ ในหน้าต่าง Get Info ใน Finder ก่อนที่ฉันจะย้ายข้อมูลสำรองหากคุณทำตามขั้นตอนทั้งหมดโดยไม่ต้องเปิดหน้าต่างนั้นและทำการตรวจสอบ แต่การย้ายไฟล์ต้นฉบับใน Finder จะทำให้ลิงก์ติดตามไฟล์ แต่จะอยู่ใน Finder เท่านั้น นอกจากนี้หลังจากเรียกใช้งาน Finder อีกครั้งมันจะแสดงเส้นทางที่ถูกต้องตราบใดที่ไฟล์ต้นฉบับยังคงอยู่ที่นั่น ในระหว่างนี้ symlink จะไม่เปลี่ยนแปลง แต่จะชี้ไปที่เดิมเสมอ จะต้องมีข้อผิดพลาดบางอย่างกับวิธีที่ Finder แก้ไข symlink ดูเหมือนว่าจะถือว่าพวกเขาเป็นนามแฝง แต่จริง ๆ แล้วไม่ได้อัปเดตพวกเขาหากคุณย้ายไฟล์ต้นฉบับดังนั้นมันจะรีเซ็ตถ้าคุณเปิดตัว Finder อีกครั้ง

ฉันไม่แน่ใจว่าสิ่งที่เกี่ยวข้องคืออะไร หากคุณต้องการแทนที่ไฟล์ต้นฉบับมันแทบจะเป็นไปไม่ได้เลยที่จะเปิดตัว Finder ใหม่ทุกครั้ง แต่ฉันคิดว่ามันน่าจะส่งผลกระทบเฉพาะกรณีที่คุณเปิด symlink ใน Finder หรือโปรแกรมที่ใช้เครื่องมือเลือกไฟล์ OS (ฉันไม่ได้ทดสอบว่าพวกเขาปฏิบัติกับ Finder หรือไม่)

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