ไฟล์ชุดเปิดเบราว์เซอร์เริ่มต้นแทน Firefox


9

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

คำสั่งแต่ละรายการทำงาน เมื่อฉันเรียก.batไฟล์มันจะเปิด Internet Explorer ไปยังเว็บไซต์ ผมทำอะไรผิดหรือเปล่า?

@echo off

REM Exam Startup - Username is "exam", then start the Exam website, and exit the script
if %USERNAME% EQU exam (
    if exist "%PROGRAMFILES%\Mozilla Firefox\firefox.exe"       start "%PROGRAMFILES%\Mozilla Firefox\firefox.exe" "https://www.example.com/"
    if exist "%PROGRAMFILES(x86)%\Mozilla Firefox\firefox.exe"  start "%PROGRAMFILES(x86)%\Mozilla Firefox\firefox.exe" "https://www.example.com/"
    exit
)
...
REM rest of script

คำตอบ:


25

ผมทำอะไรผิดหรือเปล่า?

if exist "%PROGRAMFILES%\Mozilla Firefox\firefox.exe" start "%PROGRAMFILES%\Mozilla Firefox\firefox.exe" "https://www.example.com/"

คุณไม่มีคำสั่ง"title"ของคุณstart

  • หากไม่มี"title"แล้วstartแยกวิเคราะห์"%PROGRAMFILES%\Mozilla Firefox\firefox.exe"เป็นชื่อ (เพราะมันเริ่มต้นด้วย") และ"https://www.example.com/"เป็นคำสั่งในการดำเนินการ

  • การใช้คำสั่ง"https://www.example.com/"จะทำให้เบราว์เซอร์เริ่มต้นเปิด URL นั้นขึ้นมา

ลองเพิ่ม""หลังจากstart:

if exist "%PROGRAMFILES%\Mozilla Firefox\firefox.exe" start "" "%PROGRAMFILES%\Mozilla Firefox\firefox.exe" "https://www.example.com/"

วากยสัมพันธ์

START "title" [/D path] [options] "command" [parameters] Key:
  • title ข้อความสำหรับแถบหัวเรื่องหน้าต่าง CMD (จำเป็น)
  • path ไดเรกทอรีเริ่มต้น
  • command คำสั่งแบตช์ไฟล์หรือโปรแกรมปฏิบัติการเพื่อเรียกใช้
  • parameters พารามิเตอร์ที่ส่งผ่านไปยังคำสั่ง

...

การรวมสิ่งtitleนี้เสมออาจเป็นสตริงแบบง่าย ๆ"My Script"หรือเพียงแค่คู่ของคำพูดที่ว่างเปล่า""

ตามเอกสารของ Microsoft ชื่อเป็นตัวเลือก แต่ขึ้นอยู่กับตัวเลือกอื่น ๆ ที่คุณเลือกคุณสามารถมีปัญหาหากไม่ได้ระบุ

แหล่งที่มาเริ่ม


อ่านเพิ่มเติม

  • ดัชนี AZ ของบรรทัดคำสั่ง Windows CMD - การอ้างอิงที่ยอดเยี่ยมสำหรับทุกสิ่งที่เกี่ยวข้องกับ Windows cmd line
  • start - เริ่มโปรแกรมคำสั่งหรือสคริปต์แบทช์ (เปิดในหน้าต่างใหม่)

ดังนั้นหากฉันเข้าใจสิ่งนี้อย่างถูกต้องstartตีความ...firefox.exeว่าเป็นชื่อเรื่องและ URL ว่าควรเริ่มต้นอย่างไรและฉลาดพอที่จะตรวจจับ URL และป้อนไปยังเบราว์เซอร์เริ่มต้นหรือไม่
Boldewyn

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