ฉันจะได้รับ exe symlinked บน Windows เพื่อ "ดู" การพึ่งพาในโฟลเดอร์เดียวกันได้หรือไม่?


1

ตัวอย่างเช่นฉันต้องใช้wgetบน Windows ถ้าฉันแตกไฟล์ zip มันมีจำนวนมากที่พึ่งพา (ที่กำลังเป็นต้น) ตอนนี้ถ้าฉันจะ symlink wget.exe(โดยใช้mklink) บนเดสก์ท็อปของฉัน (ฉันได้ลองทั้งลิงค์สัญลักษณ์และลิงก์ยาก) แล้วก็ยังไม่ ทำงานได้โดยไม่จำเป็นต้องมี DLLs อยู่บนเดสก์ท็อปด้วย / กำลังเชื่อมโยงกับเดสก์ท็อปด้วย มีวิธีที่ฉันสามารถเรียกใช้จากเดสก์ท็อป แต่ "ดู" การพึ่งพากลับในโฟลเดอร์ของตนเองหรือไม่

โปรดทราบว่าถ้าผมจะสร้างทางลัดไปยังwget.exeบนเดสก์ทอปของฉันฉันสามารถนำมันขึ้นมาจากพร้อมรับคำสั่งกับสก์ท็อปเป็นที่ตั้งและการทำงานเป็นไปตามคาด wget.exe.lnkแต่ผมต้องทำงาน ฉันจะได้รับ symlink เพื่อทำตัวแบบนี้ (ไม่.lnkแน่นอน) หรือไม่?

ขอบคุณ!


ฉันไม่แน่ใจว่าจะแก้ปัญหาได้หรือไม่ แต่การพึ่งพาอาศัยอยู่ในเส้นทางของคุณ (เช่น System32) Windows ไม่มีเส้นทาง "ไบนารี" และ "ไลบรารี" ที่แยกจากกันอย่างที่ * nix ทำ แต่ใช้ตัวแปรสภาพแวดล้อมของเส้นทางเมื่อค้นหาไลบรารี แน่นอนถ้าคุณหมายถึงสิ่งต่าง ๆ เช่นการค้นหาไฟล์ข้อความที่บันทึกไว้ข้างไบนารีใช่นั่นจะไม่ทำงาน
CBHacking

ใช่นั่นคือสิ่งที่ฉันพูดถึง มันไม่มีวิธีที่จะทำให้มันทำงานได้เหรอ? ฉันคิดว่ามีเหตุผล symlink ควรทำงานและ hardlink จะไม่เพราะ symlink เหมือนทางลัด
ajeetdsouza

คำตอบ:


1

คำตอบสั้น ๆ : ไม่

สำหรับเร็กคอร์ดสิ่งนี้ไม่ได้ทำงานใน Linux / Unix ที่ symlink เป็นบรรทัดฐาน ในสภาพแวดล้อมบรรทัดคำสั่งใด ๆ หากไบนารีมีการพึ่งพาพวกเขาจะต้องอยู่ในไดเรกทอรีการทำงานปัจจุบันหรือในหนึ่งในไดเรกทอรีในตัวแปร PATH ของคุณ

ในกรณีของคุณคุณสามารถเชื่อมโยงไดเรกทอรีไปยังเดสก์ท็อปของคุณได้ แต่คุณจะต้องใส่ซีดีลงในบรรทัดคำสั่งก่อนที่คุณจะรัน wget.exe

ทางเลือกเดียวที่จะคอมไพล์ wget.exe และเชื่อมโยงแบบคงที่กับไฟล์. dll ที่ต้องการ (เนื่องจากเป็นโอเพ่นซอร์ส) ด้วยวิธีนี้คุณจะไม่ต้องการไฟล์. dll และ wget.exe เหล่านั้นจะเป็นไฟล์แบบสแตนด์อะโลน อย่างไรก็ตามขั้นตอนสำหรับการทำเช่นนี้ใน Windows นั้นค่อนข้างเกินขอบเขตของ SuperUser เล็กน้อย

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