ตัวอย่างเช่นฉันต้องการเพิ่มแผ่นจดบันทึก ++ ลงใน PATH ของฉันอย่างไรก็ตามไดเรกทอรียังมีuninstall.exe
ไฟล์อื่น ๆ อีกหลายไฟล์ / ไฟล์ที่เรียกใช้งานได้และฉันไม่ต้องการให้ "มลพิษ" พา ธ ของฉัน ฉันจะเพิ่มได้notepad++.exe
ไหม
ตัวอย่างเช่นฉันต้องการเพิ่มแผ่นจดบันทึก ++ ลงใน PATH ของฉันอย่างไรก็ตามไดเรกทอรียังมีuninstall.exe
ไฟล์อื่น ๆ อีกหลายไฟล์ / ไฟล์ที่เรียกใช้งานได้และฉันไม่ต้องการให้ "มลพิษ" พา ธ ของฉัน ฉันจะเพิ่มได้notepad++.exe
ไหม
คำตอบ:
คุณสามารถเพิ่มแบตช์สคริปต์ไปยังไดเรกทอรีที่อยู่ในเส้นทางของคุณซึ่งมีลักษณะดังนี้:
@echo off
:: Notepad++ execution
if [%1]==[-h] goto :HELP
if [%1]==[--help] goto :HELP
if [%1]==[/?] goto :HELP
goto :START
:START
start "" /i "%ProgramFiles(x86)%\notepad++\notepad++.exe" %*
goto :EOF
:HELP
echo -------------------------------
echo Notepad++ Command Argument Help
echo -------------------------------
echo Usage :
echo.
echo notepad++ [--help] [-multiInst] [-noPlugins] [-lLanguage] [-nLineNumber] [-cColumnNumber] [-xPos] [-yPos] [-nosession] [-notabbar] [-ro] [-systemtray] [-loadingTime] [fullFilePathName]
echo.
echo --help : This help message
echo -multiInst : Launch another Notepad++ instance
echo -noPlugins : Launch Notepad++ without loading any plugin
echo -l : Launch Notepad++ by applying indicated language to the file to open
echo -n : Launch Notepad++ by scrolling indicated line on the file to open
echo -c : Launch Notepad++ on scrolling indicated column on the file to open
echo -x : Launch Notepad++ by indicating its left side position on the screen
echo -y : Launch Notepad++ by indicating its top position on the screen
echo -nosession : Launch Notepad++ without any session
echo -notabbar : Launch Notepad++ without tabbar
echo -ro : Launch Notepad++ and make the file to open read only
echo -systemtray : Launch Notepad++ directly in system tray
echo -loadingTime : Display Notepad++ loading time
echo -alwaysOnTop : Make Notepad++ always on top
echo fullFilePathName : file name to open (absolute or relative path name)
echo.
goto :EOF
:EOF
notepad++.cmd
คุณสามารถตั้งชื่อมัน ส่วนวิธีใช้ช่วยให้คุณรับข้อมูลเกี่ยวกับสวิตช์ได้อย่างง่ายดาย
ฉันใส่สคริปต์ดังกล่าวและโปรแกรมบรรทัดคำสั่งทั้งหมดลงในไดเรกทอรีซึ่งเพิ่มลงใน%PATH%
:
C:\Users\Public\Command\
... และไดเรกทอรีนั้นจะถูกซิงค์กับคอมพิวเตอร์และเครื่องเสมือนทั้งหมด
สร้างไฟล์แบตช์ที่มีเนื้อหาดังต่อไปนี้:
@"C:\Program Files\Git\bin\git.exe" %*
นี้ควรได้รับการบันทึกเป็น.bat
ไฟล์เช่นในไดเรกทอรีที่อยู่ในของคุณgit.bat
PATH
@
ยับยั้งการสะท้อนคำสั่งไปยังเชลล์ที่เรียกใช้ ใบเสนอราคา""
ป้องกันไม่ให้มีการตีความพื้นที่สีขาวเป็นตัวคั่นอาร์กิวเมนต์ %*
วางอาร์กิวเมนต์ใด ๆ ลงในไฟล์แบทช์ไปยังไฟล์ปฏิบัติการที่เสนอราคาแทน
.bat
ขณะนี้คุณสามารถเรียกใช้ปฏิบัติการส่วนหนึ่งของชื่อแฟ้มชุดก่อน git
ในกรณีของฉัน
อ้างอิง:
start git
แทนที่จะทำเพื่อพวกเขา สคริปต์ชุดจะทำหน้าที่ดีกว่าถ้ามันexec
ผ่านเข้าสู่กระบวนการที่ร้องขอ แต่นี้เป็นไปไม่ได้ใน Windows: serverfault.com/questions/315077/... ฉันสามารถเติมเงินได้call
แต่มันจะอวดความรู้และไร้ประโยชน์เป็นส่วนใหญ่
ลากทางลัดที่จะไปnotepad++.exe
C:\Windows\System32
หรือตามที่แนะนำโดย @Synetech inc. คุณสามารถวางทางลัดในไดเรกทอรีแยกต่างหาก (เช่นC:\Shortcuts
) จากนั้นเพิ่มไดเรกทอรีนั้นลงใน%PATH%
:
setx PATH "%PATH%;C:\Shortcuts"
ตามที่ความคิดเห็นบางส่วนระบุว่าจะใช้งานได้จากกล่องโต้ตอบเรียกใช้เท่านั้น ในการรับทางลัดเพื่อเปิดใช้จากพรอมต์คำสั่งคุณต้องเพิ่มส่วนขยายทางลัด (.LNK) ให้กับตัวแปรสภาพแวดล้อม PATHEXT ของคุณ
setx PATHEXT %pathext%;.LNK
อ้างอิง:
ฉันจะเริ่มแอพพลิเคชั่นได้อย่างง่ายดายด้วยกล่องโต้ตอบเรียกใช้
Shortcuts
ฉันมีโฟลเดอร์เฉพาะสำหรับวัตถุประสงค์นี้เรียกว่า
setx
นั่นเป็นไวยากรณ์ผิด คุณไม่ได้ใช้เครื่องหมายเท่ากับและ IIRC คุณต้องใส่พา ธ ทั้งหมดในเครื่องหมายคำพูดหากกระแส%PATH%
มีช่องว่างอยู่ (ซึ่งจะเป็น)
SETX
ใช้เครื่องหมายตัวหนอนแทนตัวแปรแทนร้อยละเพื่อหลีกเลี่ยงการขยายตัว? ฉันรู้ว่าเครื่องมือการตั้งค่า env-var ไม่ ...
Run As
กล่องโต้ตอบ แต่จะไม่ทำงานจากพรอมต์คำสั่ง
เพียงสร้างลิงค์สัญลักษณ์โดยใช้mklink
ในโฟลเดอร์ใน Path
เช่น (ในพรอมต์คำสั่งของผู้ดูแลระบบ)
mklink "C:\Users\Me\Documents\Paths\np.exe" "C:\Program Files (x86)\Notepad++\notepad++.exe"
คีย์รีจิสทรีของ App Path ทำสิ่งนี้อย่างแน่นอน: ตั้งค่าพา ธ เป็น notepad ++. exe เป็น "\ program files \ ... " และคุณจะสามารถเปิดใช้งานได้จาก Start-Run, cmd, ... เช่นเดียวกับที่สามารถเรียกใช้งานได้จาก ไดเรกทอรีใน% PATH%
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
การอ้างอิง: /programming/4822400/register-an-exe-so-you-can-run-it-from-any-command-line-in-windows
ฉันไม่ชอบโซลูชันที่นำเสนอที่นี่ดังนั้นฉันจึงลองอย่างอื่น
ติดตั้งส่วนขยายเชลล์ลิงก์ (ข้อมูลเพิ่มเติมที่นี่ )
สร้างโฟลเดอร์ที่ใดที่หนึ่งในการจัดเก็บทางลัดของคุณทั้งหมดเช่นMarteen แสดงให้เห็น%PATH%
และเพิ่มเข้าไปในของคุณ ฉันสร้างC:\Shortcuts
และใช้Rapid Environment Editorเพื่อเพิ่มลงใน PATH ของฉัน
คลิกขวาไฟล์ที่คุณต้องการเพิ่มไปยังเส้นทางของคุณ (ใน Explorer) และคลิก "เลือกแหล่งลิงก์"
Drop As > Symbolink Link
คลิกขวาในโฟลเดอร์ที่คุณเพิ่งสร้างขึ้นและคลิก
เปลี่ยนชื่อลิงค์สัญลักษณ์ถ้าคุณต้องการ
แค่นั้นแหละ. คุณควรจะสามารถเข้าถึงโปรแกรมของคุณผ่านทางบรรทัดคำสั่งได้ทันที หากคุณเพิ่งเพิ่มโฟลเดอร์ใหม่ลงใน PATH ของคุณคุณจะต้องรีสตาร์ท cmd.exe หรือ Cmder หรือ ConEmu หรืออะไรก็ตามที่คุณใช้ หลังจากนั้นคุณสามารถเพิ่มโปรแกรมใหม่โดยไม่ต้องเริ่มต้นใหม่
start
เพื่อหลีกเลี่ยงปัญหาดังที่แสดงในคำตอบของฉัน