Announcement

Collapse
No announcement yet.

อยากรู้เรื่องไฟล์ ".bat" ครับ [ถ้าถามผิดหมวดขออภัยครับ]

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • อยากรู้เรื่องไฟล์ ".bat" ครับ [ถ้าถามผิดหมวดขออภัยครับ]

    คือ 1.ไฟล์ .bat มันคืออะไรครับ มันเอาไว้ทำอะไรครับ และมันดีหรือไม่ดีอย่างไรครับ
    2.ที่ผมไปเห็นมาก็คือ เค้าสร้างBATไฟล์ขึ้นมา เหมือนจะสร้างด้วยNotepad และในโฟลเดอร์เดียวกันก็มีตัวติดตั้งโปรแกรมอยู่
    แต่เวลาใช้งาน เค้าไม่รันตัวติดตั้งจริง แต่เค้าไปรันไฟล์BATแทนใช้เวลาไม่นานหน้าBATก็หายไป และโปรแกรมนั้นก็ติดตั้งเสร็จเรียบร้อย
    ถ้าโปรแกรมบางตัวที่มันติดตั้งเสร็จแล้วจำเป็นต้องรีสตาร์ท มันก็รีให้เลย หรือบางอันก็สั่งให้รีสตาร์ททีหลังก็ได้ เลยสงสัยว่ามันทำได้ยังไงครับ??
    3.การสร้างไฟล์.bat มาลงโปรแกรมมีผลเสียผลดีไหมครับ??
    4.ช่วยบอกโค้ดที่เขียนในNotepadด้วยครับ ผมอยากลองทำ เผื่อถ้ามันมีประโยชน์จะได้ทำกับโปรแกรมที่ต้องใช้ลงบ่อยๆเวลาฟอแมตคอม


    ถ้าสงสัยด้วยมาเพิ่มครับ เอาเป็นว่า ผมอยากรู้มากๆ

  • #2
    รอจดครับความรู้เหอๆ แต่อยากรู้ว่า .bat มันต่างจากคำสั่ง cmd ยังไงครับ

    Comment


    • #3
      Batch File เป็นการเปิดช่องทางการ Interface ระหว่าง ผู้ใช้งาน ( Peopleware ) กับระบบคอมพิวเตอร์ อย่างชาญฉลาดของผู้สร้างระบบปฏิบัติการ DOS ก่อนอื่นต้องทำความเข้าใจกับส่วนประกอบต่างๆ ก่อน...
      โดยปกติคำสั่งที่ใช้กับระบบคอมพิวเตอร์โดยเฉพาะ OS ที่เป็น DOS จะมีคำสั่งที่สามารถสั่งให้คอมพิวเตอร์ทำงานได้อยู่ 3 ประเภท คือ Command File ( .com ) , Execute File ( .exe ) และ Batch File ( .bat )
      Command File และ Execute File เป็น File ที่บรรจุคำสั่งที่เป็นรหัสเลขฐานสอง หรือ เรียกกันว่า ภาษาเครื่อง ( Machine Code ) ซึ่งผู้ใช้งาน ไม่สามารถอ่านได้เข้าใจ หรือ รู้เรื่องได้

      Batch File เป็น File ที่รวบรวมและเรียบเรียงชุดคำสั่ง ภายใน และ ภายนอก ที่สั่งให้คอมพิวเตอร์ ( ซึ่งเป็นแนวความคิดเดียวกันกับการเขียนโปรแกรมนั่นเอง ) ทำงานตามที่ต้องการ ซึ่งใช้รหัส ASCII ที่เป็นภาษาธรรมดาที่ผู้ใช้สามารถอ่านได้เข้าใจ โดยผู้ใช้สามารถเขียน Batch File เพื่อสร้างชุดคำสั่งที่ต้องการได้ตามประสงค์ เพียงแต่เรียนรู้หลักการเขียน และ คำสั่งที่สามารถใช้ได้ ใน Batch File โดย File ที่ถูกสร้างขึ้นมาจะมี นามสกุลของไฟล์ ( File Extension ) เป็น " .bat " โดยที่ Batch File นี้สามารถติดต่อกับ Batch File อื่น หรือ รับ-ส่ง ตัวแปร เข้าสู่ หรือ ออกจาก Batch File ได้ เช่นเดียวกันกับแนวคิดของการเขียนโปรแกรมทุกประการ เพียงแต่โปรแกรมที่เป็น Batch File นี้ ระบบคอมพิวเตอร์สามารถประมวลผลคำสั่งที่บรรจุอยู่ใน Batch File นี้ได้ทันทีโดยไม่ต้องมีการแปล ( Compile ) ไปเป็นภาษาเครื่องอีก เนื่องจากเป็นคำสั่งที่ ระบบปฎิบัติการ รู้จักอยู่แล้ว

      Comment


      • #4
        ผมขออธิบายต่อยอดคุณ jommaya2 ให้เป็นแบบชาวบ้านๆตามที่ผมเข้าใจละกันครับ ผิดพลาดประการใด ให้ผู้รู้มาแก้ไขอีกที

        ตอบข้อ1
        เป็นไฟล์ที่ใช้ในการเก็บชุดคำสั่งเพื่อให้สะดวกต่อการเรียก โดยคำสั่งที่ว่าคือคำสั่งที่สามารถเรียกได้ใน command หรือ cmd แหละครับโดย

        ตอบข้อ2
        อย่างที่อธิบายในข้อ 1 ครับ มันเป็นชุดคำสั่งแล้วมันก็ทำการไปเรียกโปรแกรมติดตั้งแหละครับ เพียงแต่อาจจะการเขียน script เพื่อทำการตรวจสอบเงื่อนไขบางอย่างเพื่อให้ทำการติดตั้งได้สะดวกขึ้น
        การสั่ง restartเครื่อง ผมเดาว่ามันใช้คำสั่งภายนอกของ windows ที่ชื่อ shutdown ครับ ลองเอา notepad เปิดไฟล์เข้าไปดูแล้วลองค่อยๆทำความเข้าใจก็ได้ครับ แต่หากไม่มีความรู้พื่นฐานเรื่องคำสั่งภายนอก-ภายในก็อาจจะลำบากหน่อยครับ

        ตอบข้อ3
        ถ้าจากในกรณีของคุณข้อดีผมว่าก็คือทำให้ติดตั้งได้ง่ายและสะดวกขึ้นครับ
        ข้อเสียคิดไม่ออกครับ นอกจากจะเป็นพวกที่ไม่อยากให้ใครเห็นว่าขั้นตอนการทำงานของ Batch ของเราว่ามีอะไรบ้าง เพราะมันสามารถเข้าไปดูได้

        ตอบข้อ4
        จริงๆผมว่ารายละเอียดมันเขียนหนังสือได้เป็นเล่มเลยครับ ทั้งรายละเอียดทั้งเทคนิค จะอธิบายเท่าที่ความไม่ขี้เกียจจะเอื้ออำนวยละกันครับ

        คำสั่งที่ใช้ใน batch ได้แบ่งเป็น 2 ประเภทครับคือ คำสั่งภายนอกกับคำสั่งภายใน
        คำสั่งภายนอก : คือพวกไฟล์ที่สามารถเรียกให้ทำงานได้ครับ เช่นไฟล์ที่มีนามสกุล เช่น .com, .exe (ใน windows ปัจจุบันจะมีเพิ่มเติมอีกเยอะครับ เท่าที่ผมนึกออกก็พวก .msc, .msi)
        คำสั่งภายใน : คำสั่งพวกนี้จะสามารถเรียกใช้งานได้ทันทีครับ จะไม่มีไฟล์ให้เรียก เช่นคำสั่ง copy, dir, cls, cd, del

        การทำงานของ batch มันทำงานไล่ลงมาเรื่อยๆทีละคำสั่งครับ
        ทดลอง batch file แบบง่ายๆนะครับ เปิด notepad ขึ้นมาแล้วพิมพ์ตามนี้เลย

        @echo off
        cls
        echo Batch File Test
        echo Open notepad
        pause
        notepad.exe

        จากนั้นให้ทำการ Save As เป้นไฟล์ชิ่ออะไรก็ได้ครับ แต่นามสกุลต้องเป็น .bat ครับ แล้วทำการลองเรียกได้เลยครับ

        อธิบายคำสั่งแต่ละบรรทัด
        @echo off คำสั่งภายใน : ไม่ทำการแสดงการเรียกคำสั่ง (หากงงที่อธิบายให้ลองเอาบบรรทัดนี้ออกแล้วเรียก batch ดูอีกทีครับ)
        cls คำสั่งภายใน : ทำการ clear หน้าจอให้ว่าง
        echo Batch File Test คำสั่งภายใน : ทำการแสดงข้อความ Batch File Test ออกทางหน้าจอ
        echo Open notepad คำสั่งภายใน : ทำการแสดงข้อความ Open notepad ออกทางหน้าจอ
        pause คำสั่งภายใน : หยุดรอรับคำสั่งจาก keyboard โดยจะขึ้นข้อความ Press any key to continue . . .
        notepad.exe คำสั่งภายนอก : เรียกโปรแกรม notepad.exe ของ windows
        cls คำสั่งภายใน : ทำการ clear หน้าจอให้ว่าง
        echo Thank You คำสั่งภายใน : ทำการแสดงข้อความ Thank You ออกทางหน้าจอ
        pause คำสั่งภายใน : หยุดรอรับคำสั่งจาก keyboard โดยจะขึ้นข้อความ Press any key to continue . . .



        batch แบบที่ดู advance หน่อยจะสามารถรับ parameter ประกาศตัวแปร ตรวจสอบเงื่อนไข หรือเปลี่ยนทิศทางข้อมูลได้ มันจะค่อนข้างออกไปทางโปรแกรมมิ่งครับ หากสนใจอาจต้องลองหาหนังสือมาอ่านครับเพราะเยอะพอดู

        Comment

        Working...
        X