คำถามติดแท็ก symlink

ไฟล์ชนิดพิเศษที่อ้างถึงไฟล์หรือไดเร็กทอรีที่ไม่มีอยู่หรือมีอยู่ เนื้อหาของลิงก์สัญลักษณ์ประกอบด้วยสตริงที่กำหนดเองซึ่งเป็นพา ธ ไปยังไฟล์ที่ลิงก์สัญลักษณ์ชี้ไป เมื่อพบ symlink ระหว่างการจำแนกชื่อพา ธ สตริงที่จัดเก็บโดยไฟล์จะถูกใช้เพื่อแก้ไขความละเอียดพา ธ

2
ผลการเชื่อมโยงสัญลักษณ์ที่ปฏิบัติการได้ใน“ ไม่พบคำสั่ง”
ฉันสร้างลิงก์สัญลักษณ์ (เมื่อวาน) เช่นนี้: sudo ln -s bin/python /usr/bin/prj-python เมื่อฉันวิ่ง: prj-python file.py ฉันเข้าใจ: prj-python: command not found เมื่อฉันลองสร้างลิงค์อีกครั้งฉันจะได้รับ: ln: การสร้างลิงก์สัญลักษณ์ `/ usr / bin / prj-python ': ไฟล์มีอยู่ ทำไมถึงเกิดขึ้น? ของฉัน$PATHคือ: / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / …
24 symlink  ln 

2
/ proc / <pid> / exe symlink แตกต่างจาก symlink ทั่วไปอย่างไร
หากฉันเริ่มต้นกระบวนการแล้วลบไบนารีของมันฉันยังคงสามารถกู้คืนได้จาก/proc/&lt;pid&gt;/exe: $ cp `which sleep` . $ ./sleep 10m &amp; [1] 13728 $ rm sleep $ readlink /proc/13728/exe /tmp/sleep (deleted) $ cp /proc/13728/exe ./sleep-copy $ diff sleep-copy `which sleep` &amp;&amp; echo not different not different $ stat /proc/13728/exe File: ‘/proc/13728/exe’ -&gt; ‘/tmp/sleep (deleted)’ Size: 0 Blocks: 0 IO Block: 1024 …
23 linux  symlink  proc 

1
รายการไฟล์ตามเป้าหมาย symlink
ฉันจะรับรายชื่อไฟล์ (จากนั้นทำบางสิ่งบางอย่างกับรายการนั้น) โดยการกรองผ่านชื่อเป้าหมายลิงก์สัญลักษณ์ไม่ใช่ชื่อ symlink ตัวอย่างจากรายการต่อไปนี้ฉันสนใจเฉพาะไฟล์สี่ไฟล์แรก (เป้าหมายมีbar): foo -&gt; /tmp/bar bar -&gt; /home/me/bartoo baz -&gt; /home/me/public/barthree zoo -&gt; /usr/share/bar moo -&gt; /tmp/foo roc -&gt; /tmp/roc
23 find  symlink 

2
มีวิธีใดที่จะติดตั้งระบบไฟล์โดยอัตโนมัติเมื่อฉันเปิดลิงก์สัญลักษณ์ไปยังไดเรกทอรีในระบบไฟล์นั้น
ฉันกำลังใช้ Arch กับ Xfce เมื่อเร็ว ๆ นี้ฉันได้สร้างลิงก์สัญลักษณ์ไปยังไดเรกทอรีบนระบบไฟล์ แต่ฉันไม่ต้องการที่จะติดตั้งระบบไฟล์ในระหว่างการบูตหรือติดตั้งด้วยตนเองก่อนที่ฉันจะเปิดลิงก์สัญลักษณ์ มีอยู่หรือไม่ที่จะติดตั้งระบบไฟล์นั้นโดยอัตโนมัติเมื่อฉันเปิดลิงก์สัญลักษณ์ไปยังไดเรกทอรีบนระบบไฟล์นั้น

7
วิธีคัดลอกโครงสร้างโฟลเดอร์และสร้างลิงก์สัญลักษณ์ไปยังไฟล์ได้อย่างไร
ฉันมีโฟลเดอร์ SOURCE ที่มีโฟลเดอร์ย่อยหลายโฟลเดอร์โดยแต่ละไฟล์มีไฟล์ของตัวเอง ฉันต้องการคัดลอกโฟลเดอร์นี้ในโฟลเดอร์ใหม่คัดลอกที่ฉันต้องการคัดลอกโครงสร้างไดเรกทอรี แต่เก็บไฟล์เป็นลิงก์สัญลักษณ์ไปยังไฟล์ต้นฉบับใน SOURCE และโฟลเดอร์ย่อย

6
รับลิงก์ที่สัมพันธ์กันระหว่างสองพา ธ
ว่าฉันมีสองเส้นทาง: และ&lt;source_path&gt; &lt;target_path&gt;ฉันต้องการเปลือกของฉัน (zsh) เพื่อค้นหาโดยอัตโนมัติหากมีวิธีที่จะแสดง&lt;target_path&gt;จาก&lt;source_path&gt;เป็นเส้นทางญาติ เช่นสมมติว่า &lt;source_path&gt; คือ /foo/bar/something &lt;target_path&gt; คือ /foo/hello/world ผลที่ได้ก็คือ ../../hello/world ทำไมฉันต้องการสิ่งนี้: ฉันต้องการที่จะสร้างการเชื่อมโยงสัญลักษณ์จาก&lt;source_path&gt;การ&lt;target_path&gt;ใช้ญาติเชื่อมโยงสัญลักษณ์เมื่อใดก็ตามที่เป็นไปได้ตั้งแต่มิฉะนั้นเซิร์ฟเวอร์แซมบ้าของเราไม่ได้แสดงไฟล์ได้อย่างถูกต้องเมื่อฉันเข้าถึงไฟล์เหล่านี้บนเครือข่ายจาก Windows (ที่ผมไม่ได้เป็นผู้ดูแลระบบ SYS และ Don' ไม่มีการควบคุมการตั้งค่านี้) สมมติว่า&lt;target_path&gt;และ&lt;source_path&gt;เป็นเส้นทางที่แน่นอนต่อไปนี้จะสร้างการเชื่อมโยงสัญลักษณ์ที่ชี้ไปยังเส้นทางที่แน่นอน ln -s &lt;target_path&gt; &lt;source_path&gt; ดังนั้นมันจึงไม่ทำงานสำหรับความต้องการของฉัน ฉันต้องทำสิ่งนี้กับไฟล์หลายร้อยไฟล์ดังนั้นฉันไม่สามารถแก้ไขด้วยตนเองได้ บิวด์อินใด ๆ ที่ดูแลสิ่งนี้?
21 shell  files  zsh  symlink 

2
ลิงก์สัญลักษณ์สร้างความแตกต่างในการใช้งานดิสก์จริงหรือไม่
ฉันได้อ่านในเว็บไซต์จำนวนมากที่ใน Linux ลิงก์สัญลักษณ์ (ลิงก์นุ่ม ๆ symlink) ก็เหมือนกับตัวชี้ที่อ้างอิงไฟล์อื่นซึ่งอาจอยู่ที่ใดก็ได้ (เช่นทางลัด Windows) อย่างไรก็ตามเมื่อฉันตรวจสอบการใช้งานดิสก์ของโฟลเดอร์ที่มีลิงก์สัญลักษณ์มีความไม่ตรงกันระหว่างสิ่งที่ตัวจัดการไฟล์ของฉันพูดและduรายงานอะไร แต่ถ้าฉันพิมพ์du -L( -L, --dereference; dereference all symbolic linksจากหน้าคน) การส่งออกของdu -Lและขนาดที่รายงานการจัดการไฟล์ของฉันเหมือนกัน คำถามของฉันคือ : ถ้าฉันมี softlink เป็นไฟล์ขนาดใหญ่เช่นhomeพาร์ติชันแยกฉันจะมีปัญหาหรือไม่? ตัวอย่าง : /var/tmpโฟลเดอร์ของฉันว่างเปล่าตอนนี้ มาสร้างไฟล์กัน $ cat /some/file.txt &gt; file.txt $ du -ac 164 ./file.txt 168 . 168 total และตัวจัดการไฟล์ของฉัน (Thunar ในกรณีนี้) รายงาน ขนาด: 1 รายการรวมเป็น …

4
ฉันจะป้องกันไม่ให้ sed -i ทำลาย symlink ได้อย่างไร
ทำไมsed -iการดำเนินการของ symlink จึงทำลายลิงก์นั้นและแทนที่ด้วยไฟล์ปลายทาง จะหลีกเลี่ยงสิ่งนี้ได้อย่างไร เช่น. $ ls -l pet* -rw-rw-r-- 1 madneon madneon 4 mar 23 16:46 pet lrwxrwxrwx 1 madneon madneon 6 mar 23 16:48 pet_link -&gt; pet $ sed -i 's/cat/dog/' pet_link $ ls -l pet* -rw-rw-r-- 1 madneon madneon 4 mar 23 16:48 pet -rw-rw-r-- 1 …
21 sed  symlink 

3
ตำแหน่ง Java จาก / usr / bin / java
ฉันพยายามค้นหาตำแหน่ง java ของฉันภายในระบบ Linux และได้รับสิ่งนี้ [980@b449 ~]$ which java /usr/bin/java [980@b449 ~]$ readlink -f $(which java) /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java ความแตกต่างระหว่าง 2 คำสั่งคืออะไร?
20 symlink  java 

5
การค้นหาไฟล์ต้นฉบับของลิงก์สัญลักษณ์
สมมุติว่าฉันมีลิงค์สัญลักษณ์ของไฟล์ในโฮมไดเร็กตอรี่ของฉันไปยังไฟล์อื่นในพาร์ติชั่นอื่น ฉันจะค้นหาตำแหน่งเป้าหมายของไฟล์ที่เชื่อมโยงได้อย่างไร โดยนี้ผมหมายถึงสมมติว่าผมมีfile2ใน/home/user/; file1แต่มันเป็นเรื่องการเชื่อมโยงสัญลักษณ์ไปยังอีก ฉันจะหาได้อย่างไรfile1โดยไม่ต้องผ่านแต่ละพาร์ติชั่น / ไดเรกทอรีเพื่อค้นหาไฟล์ด้วยตนเอง?
20 symlink 

3
เมื่อฉัน cd ผ่าน symlink ทำไม pwd แสดง symlink แทนที่จะเป็นเส้นทางจริง
ฉันสร้างการเชื่อมโยงนุ่ม ( ln -s 1 2) ไปยังไดเรกทอรีที่อยู่ภายในที่testไดเรกทอรีและเปิดการเชื่อมโยงนุ่ม ( cd 2) pwdและแสดงเส้นทางปัจจุบันใช้ เส้นทางที่แสดงเป็นและไม่ได้~/test/2~/test/1 มันแตกต่างกันใน OS เช่น Windows ทางลัดนำเราไปสู่ไดเรกทอรีจริง ฉันสับสนเล็กน้อยว่าซอฟต์ลิงค์นี้ทำงานอย่างไรใน Linux มันไม่ใช่ทางลัดWindowsใช่มั้ย เป็นเส้นทางที่ทำไมไม่~/test/1? $ mkdir test $ cd test $ mkdir 1 $ ln -s 1 2 $ cd 2 $ pwd /home/dazz/test/2

2
ลิงก์สัญลักษณ์ / ซอฟต์คล้ายกับช็อตคัต / นามแฝงบนเดสก์ท็อปหรือไม่
ฟังดูแล้วว่าฉันชอบแนวคิดพื้นฐานของลิงค์ซอฟต์ / สัญลักษณ์เปรียบเทียบกับทางลัด (บนพีซี) หรือชื่อแทน (บน Mac) นั้นเป็นสิ่งเดียวกัน ฉันจะไปทางไหน? พวกเขาเหมือนกันหรือไม่
19 alias  symlink 

6
เทียบเท่านามแฝงสำหรับลิงก์สัญลักษณ์?
ฉันพบว่าตัวเองต้องการข้ามไดเรกทอรีบางอย่างในโฟลเดอร์บ้านของฉันบ่อยและเบื่อเขียน ฉันต้องการวิธีที่รวดเร็วกว่าซึ่งเป็นลิงก์แบบดั้งเดิม อย่างไรก็ตามฉันไม่ต้องการที่จะทำให้ไดเรกทอรีบ้านของฉันยุ่งเหยิงด้วยลิงค์สัญลักษณ์มากมาย ฉันจะสร้างบาง~/links/ไดเรกทอรีและถ่วงมันมีการเชื่อมโยงสัญลักษณ์ แต่ก็ยังคงเป็นที่น่าเกลียด นอกจากนี้ฉันอาจต้องการสร้างลิงก์สัญลักษณ์ซึ่งเปลี่ยนแปลงในแต่ละวัน (กำหนดใน. bashrc) เพื่อข้ามไปยังไดเรกทอรีวันปัจจุบัน มีวิธีในการนามแฝงลิงก์สัญลักษณ์อย่างมีประสิทธิภาพหรือไม่สร้างสิ่งที่จะได้รับการยอมรับว่าเป็นลิงก์สำหรับการนำทางอย่างรวดเร็ว แต่จะไม่ปรากฏขึ้นจริงเมื่อฉันทำlsโฮมไดเรกทอรีของฉันและจะไม่เกินเซสชันปัจจุบันหรือไม่

4
หนึ่งอะตอมจะเปลี่ยน symlink เป็นไดเรกทอรีใน busybox ได้อย่างไร?
ฉันพยายาม (ใกล้เคียงที่สุด) อาจเปลี่ยน symlink ฉันได้พยายาม: ln -sf other_dir existing_symlink เพียงใส่ symlink ใหม่ในไดเรกทอรีที่มีอยู่แล้ว ln -sf other_dir new_symlink mv -f new_symlink existing_symlink นั่นทำสิ่งเดียวกัน: มันย้าย symlink ไปยังไดเรกทอรี cp -s other_dir existing_symlink มันปฏิเสธเพราะมันเป็นไดเรกทอรี ฉันอ่านแล้วว่าmv -Tทำมาเพื่อสิ่งนี้ แต่ busybox ไม่มีการ-Tตั้งค่าสถานะ

3
`l 'หมายถึงอะไรในรายการ` ls'
เมื่อฉันทำงานls -adl .*ในหนึ่งในไดเรกทอรีของฉันฉันได้รับไฟล์ที่มีรายชื่อนี้: lrwxrwxrwx 1 user group 43 Jul 3 16:25 .#filename.py -&gt; person@computer.edu.4018:1372874769 ชื่อไฟล์และสิ่งที่ดู URL จะถูกเน้นด้วยสีแดง อะไรlในค่าเฉลี่ยlrwxrwxrwx? ไฟล์ประเภทนี้คืออะไร?
18 ls  symlink 

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