ฉันจะสร้างไฟล์ทางลัด ( .lnk) ไปยังไฟล์อื่นหรือเรียกใช้งานได้โดยใช้ยูทิลิตี้บรรทัดคำสั่งได้อย่างไร
(.ink file)เนื่องจากมีความสับสน ฉันแก้ไขคำถามเพื่อสะท้อนความคิดเห็นของ Shantanu แม้ว่าคุณจะมีวิธีในการสร้าง 'ทางลัด' แต่ก็ไม่ได้ตอบคำถามเฉพาะนี้
                ฉันจะสร้างไฟล์ทางลัด ( .lnk) ไปยังไฟล์อื่นหรือเรียกใช้งานได้โดยใช้ยูทิลิตี้บรรทัดคำสั่งได้อย่างไร
(.ink file)เนื่องจากมีความสับสน ฉันแก้ไขคำถามเพื่อสะท้อนความคิดเห็นของ Shantanu แม้ว่าคุณจะมีวิธีในการสร้าง 'ทางลัด' แต่ก็ไม่ได้ตอบคำถามเฉพาะนี้
                คำตอบ:
มีข้อมูลที่มีประโยชน์มากในไซต์นี้: http://ss64.com/nt/shortcut.html
ดูเหมือนว่ามีบางอย่างshortcut.exeในชุดทรัพยากรบางอย่างที่ฉันไม่ได้มี 
ดังที่เว็บไซต์อื่น ๆ กล่าวถึงไม่มีวิธีการติดตั้งในตัวจากไฟล์แบตช์
แต่คุณสามารถทำได้จากสคริปต์ VB:
ส่วนเพิ่มเติมใน VBscript ด้านล่างนี้ได้รับการใส่ความคิดเห็น:
Set oWS = WScript.CreateObject("WScript.Shell") sLinkFile = "C:\MyShortcut.LNK" Set oLink = oWS.CreateShortcut(sLinkFile) oLink.TargetPath = "C:\Program Files\MyApp\MyProgram.EXE" ' oLink.Arguments = "" ' oLink.Description = "MyProgram" ' oLink.HotKey = "ALT+CTRL+F" ' oLink.IconLocation = "C:\Program Files\MyApp\MyProgram.EXE, 2" ' oLink.WindowStyle = "1" ' oLink.WorkingDirectory = "C:\Program Files\MyApp" oLink.Save
ดังนั้นถ้าคุณต้องทำมันจริงๆคุณสามารถทำให้ไฟล์แบตช์ของคุณเขียนสคริปต์ VB ลงบนดิสก์เรียกใช้แล้วลบมันอีกครั้ง ตัวอย่างเช่น:
@echo off
echo Set oWS = WScript.CreateObject("WScript.Shell") > CreateShortcut.vbs
echo sLinkFile = "%HOMEDRIVE%%HOMEPATH%\Desktop\Hello.lnk" >> CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> CreateShortcut.vbs
echo oLink.TargetPath = "C:\Windows\notepad.exe" >> CreateShortcut.vbs
echo oLink.Save >> CreateShortcut.vbs
cscript CreateShortcut.vbs
del CreateShortcut.vbs
การเรียกใช้สคริปต์ข้างต้นส่งผลให้มีทางลัดใหม่บนเดสก์ท็อปของฉัน:

นี่คือตัวอย่างที่สมบูรณ์มากขึ้นจากผู้มีส่วนร่วมที่ไม่ระบุชื่อ (อัปเดตด้วยการแก้ไขเล็กน้อย):
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
SET LinkName=Hello
SET Esc_LinkDest=%%HOMEDRIVE%%%%HOMEPATH%%\Desktop\!LinkName!.lnk
SET Esc_LinkTarget=%%SYSTEMROOT%%\notepad.exe
SET cSctVBS=CreateShortcut.vbs
SET LOG=".\%~N0_runtime.log"
((
  echo Set oWS = WScript.CreateObject^("WScript.Shell"^) 
  echo sLinkFile = oWS.ExpandEnvironmentStrings^("!Esc_LinkDest!"^)
  echo Set oLink = oWS.CreateShortcut^(sLinkFile^) 
  echo oLink.TargetPath = oWS.ExpandEnvironmentStrings^("!Esc_LinkTarget!"^)
  echo oLink.Save
)1>!cSctVBS!
cscript //nologo .\!cSctVBS!
DEL !cSctVBS! /f /q
)1>>!LOG! 2>>&1
              SET Esc_LinkTarget=%0คุณจะต้องลบออก"จากecho oLink.TargetPath = oWS.ExpandEnvironmentStrings^(!Esc_LinkTarget!^)
                    Wscript.Argumentsเพื่อรับอาร์กิวเมนต์บรรทัดคำสั่ง ... lol
                    ต่อไปนี้เป็นโซลูชันที่คล้ายกันโดยใช้ PowerShell (ฉันรู้ว่าคุณอาจจะเขียนไฟล์แบตช์ทั้งหมดของคุณใหม่ใน PS แต่ถ้าคุณแค่อยากให้มันเสร็จ™ ... )
set TARGET='D:\Temp'
set SHORTCUT='C:\Temp\test.lnk'
set PWS=powershell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive -NoProfile
%PWS% -Command "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut(%SHORTCUT%); $S.TargetPath = %TARGET%; $S.Save()"
คุณอาจต้องอธิบายให้ชัดเจนระบุเส้นทางไปยัง PS ในไฟล์ของคุณ แต่มันควรจะได้ผล มีคุณสมบัติเพิ่มเติมบางอย่างที่คุณสามารถคลานผ่านวัตถุนี้ได้เช่นกัน:
Name             MemberType Definition                             
----             ---------- ----------                             
Load             Method     void Load (string)                     
Save             Method     void Save ()                           
Arguments        Property   string Arguments () {get} {set}        
Description      Property   string Description () {get} {set}      
FullName         Property   string FullName () {get}               
Hotkey           Property   string Hotkey () {get} {set}           
IconLocation     Property   string IconLocation () {get} {set}     
RelativePath     Property   string RelativePath () {set}           
TargetPath       Property   string TargetPath () {get} {set}       
WindowStyle      Property   int WindowStyle () {get} {set}         
WorkingDirectory Property   string WorkingDirectory () {get} {set} 
              นอกจากทางลัด.exeคุณสามารถใช้เวอร์ชันบรรทัดคำสั่งของ NirCmd เพื่อสร้างทางลัด http://nircmd.nirsoft.net/shortcut.html
วิธีการเกี่ยวกับการใช้คำสั่ง mklink? C: \ Windows \ System32> mklink สร้างลิงค์สัญลักษณ์
MKLINK [[/ D] | [/ H] | [/ J]] ลิงก์เป้าหมาย
    /D      Creates a directory symbolic link.  Default is a file
            symbolic link.
    /H      Creates a hard link instead of a symbolic link.
    /J      Creates a Directory Junction.
    Link    specifies the new symbolic link name.
    Target  specifies the path (relative or absolute) that the new link
            refers to.
              หลังจากการอภิปรายทั้งหมดที่เรามีที่นี่เป็นวิธีแก้ปัญหาของฉันที่แนะนำ: ดาวน์โหลด: http://optimumx.com/download/Shortcut.zip 
แยกมันออกมาบนเดสก์ท็อปของคุณ (ตัวอย่าง) ตอนนี้สมมติว่าคุณต้องการสร้างทางลัดสำหรับไฟล์ที่เรียกว่า scrum.pdf (บนเดสก์ท็อป): 
1. เปิด CMD และไปที่โฟลเดอร์เดสก์ท็อป
2. รัน:Shortcut.exe /f:"%USERPROFILE%\Desktop\sc.lnk" /a:c  /t:%USERPROFILE%\Desktop\scrum.pdf
มันจะสร้างทางลัดที่เรียกว่า sc.lnk บนเดสก์ท็อปของคุณซึ่งจะชี้ไปที่ไฟล์ต้นฉบับ (scrum.pdf)
โปรแกรมฟรีนี้จำเป็นต้องใช้ฟังก์ชั่นhttp://www.nirsoft.net/utils/nircmd2.html : (ตัวอย่างจากหน้าเว็บดังกล่าว)
"Create a shortcut to Windows calculator under Start Menu->Programs->Calculators   nircmd.exe shortcut "f:\winnt\system32\calc.exe" "~$folder.programs$\Calculators" "Windows Calculator"
ตัวอย่างของฉันเองที่จะลอง: ทางลัด nircmd.exe "c: \ windows \ system32 \ calc.exe" "~ $ folder.desktop $" "เครื่องคิดเลข Windows"
ฉันรู้ว่าหัวข้อนี้เก่า แต่ฉันต้องการเสนอวิธีแก้ปัญหาที่ง่ายสำหรับฉัน
ฉันคัดลอกไฟล์. ico ไปยังไดรฟ์ C: ก่อน จากนั้นฉันสร้างทางลัดบนเดสก์ท็อปและตั้งไอคอนเป็นไฟล์ ico บนไดรฟ์ C: ฉันคัดลอกทั้ง .ico และทางลัดไปยังเครือข่ายที่ผู้ใช้ของฉันสามารถเข้าถึงได้ เมื่อนั้นฉันเขียนไฟล์แบตช์ต่อไปนี้เพื่อคัดลอก ico และ. url ไปยังเดสก์ท็อป windows 7 ของผู้ใช้ สิ่งนี้จะสร้างทางลัดบนเดสก์ท็อปของผู้ใช้ทั้งหมดและเก็บไฟล์ไอคอนที่ฉันตั้งไว้เมื่อสร้างทางลัด ฉันหวังว่านี่จะช่วยให้ใครบางคน
@echo off
Copy "\\sharename\folder\icon.ico" "C:\"
pause
copy "\\sharename\folder\shortcut.url" "C:\Users\All Users\Desktop"
pause