วันจันทร์ที่ 16 มีนาคม พ.ศ. 2552

Batch files

ผม รู้จัก Batch files ครั้งแรก เมื่อประมาณ 18 ปี ที่แล้ว ตอนไปทำงานที่โรงพิมพ์แห่งหนึ่ง ที่เจ้าของเป็นแขก หลังจากเข้าไปทำงานได้เพียงไม่กี่วัน เจ้านาย ก็สั่งเครื่อง คอมพิวเตอร์มาให้ใช้ 1 ตัว โดยคนที่มาส่งและติดตั้ง มาถึงก็ ถามผมว่าใช้โปรแกรมอะไรเป็นหลักจะได้สอนวิธีการเรียกโปรแกรม ให้ ผมก็บอกว่าผมใช้ CW (เวิดร์ดจุฬา) เป็นหลัก แล้วก็ Lotus-123 ช่างที่มาติดตั้ง (ตอนหลักสอบถามได้ว่าจบวิศวะคอม) เลยทำการ เขียนอะไรไม่เข้าไปสักประเดี๋ยว เดียว พอเปิดคอมพิวเตอร์ขึ้นมา ก็อยู่ในโปรแกรม CW เลยโดยไม่ต้องกดอะไรสักอย่าง นั่นคือครั้งแรก ที่ผมได้เห็น ความสามารถของ Batch files ทำให้ผมสนใจในเรื่องดังกล่าวมาก พยายามหาหนังสือมาอ่าน .. เพื่อที่จะได้เหมือนผู้วิเศษ ที่สามารถ ควบคุมคอมพิวเตอร์ให้ทำงานได้มากกว่าการใช้งานโปรแกรมเพียงอย่างเดียว..

อิ อิ หลังจากนั้นเวลา ก็ผ่านไปไวเหมือนโกหก .. dos -> windos 3 -> windows 98 -> windows me -> windows xp ->...... จนมาถึงปัจจุบัน ผู้คนรุ่นใหม่ ๆ มักไม่ค่อยจะรู้จัก Batch files กันแล้ว.. ทำให้การทำงานบางอย่าง ไม่สามารถทำได้ หรือทำได้ แต่ไม่ค่อยสะดวก.. เท่าที่ควร โดยเฉพาะสำหรับ เจ้าหน้าที่ it หรือ support ด้านไอที ผมว่าควรที่จะศึกษา Batch files เอาไว้ไม่เสียหลายครับ..

ว่าแล้วก็เข้าประเด็น.. นี่คือตัวอย่าง ชุดคำสั่ง ใน batch files ที่ผมต้องใช้อยู่เป็นประจำ ครับ
การสั่ง ลบไดร์ ที่ map ใน Network รูปแบบคำสั่ง net use /delete
Ex.
net use p: /delete แปลว่า ให้ลบ drive P: ออกจากระบบ (เหมือนคำสั่ง ที่เราคลิ๊กขวา disconnect)
การสั่ง map drive รูปแบบคำสั่ง net use <\\computername of ip\share name>
Ex.
net use p: \\w2k3\sc_prog แปลว่า ให้ map drive P: ที่ คอมพิวเตอร์ชื่อ w2k3 ชื่อที่ใช้แชร์ sc_prog
การสั่ง ลบเครื่องพิมพ์ ที่ใช้กับโปรแกรม dos รูปแบบคำสั่ง net use /delete
Ex.
net use lpt2 /delete แปลว่า ให้ลบเครื่่องพิมพ์ lpt2 ออกจากระบบ (คำสั่งนี้ผมหาใน Windows xp ไม่เจอ แต่ win98 มี)
การสั่ง ต่อเครื่องพิมพ์ ที่ใช้กับโปรแกรม dos รูปแบบ net use <\\computername\share name>
Ex.
net use lpt2 \\com4\epson แปลว่าให้ ต่อ lpt2 กับเครื่องคอมพิวเตอร์ืชื่อ com4 ชื่อที่ใช้แชร์ epson

ข้อแนะนำเพิ่มเติม
1. การตั้งชื่อ Share แนะนำให้ตั้งให้สั้น ๆ และอย่าเว้นวรรค ปัญหาจะได้น้อย ๆ
2. ถ้ามีความจำเป็นต้อง ตั้งแบบยาว ๆ และเว้นวรรค การ Connect ด้วยคำสั่ง Dos ต้องมี "" ครอบ ประโยคด้วย เช่น
net use p: "\\w2k3\Song room" ไม่งั้นใช้ไม่ได้ (พลาดมานัก ต่อนักแล้ว)

สุดท้ายแถมวิธีการสร้าง Batch files
1. สร้างด้วย notepad
- เปิด notepad
- พิมพ์ชุดคำสั่ง
- เลือก Save as.. ตั้งชื่อไฟล์ ตามด้วยนามสกุล bat เช่น test.bat และเลือก Save at type เป็น ALL files
2. สร้างด้วยคำสั่ง Dos
- ให้ออกไปที่ Dos (ถ้าออกไปไม่เป็น อย่าทำข้อนี้)
- พิมพ์ copy con ตามด้วยชื่อไฟล์ เช่น copy con test.bat
- เคอร์เซอร์จะลงมาอีกบรรทัด ว่าง ๆ ตรงนี้ิพิมพ์คำสั่งเข้าไป
- กด Enter เพื่อขึ้นบรรทัดใหม่.. ใส่คำสั่งเข้าไปให้เต็มที่ จนพอใจแล้วกด F6
3. ไปคัดลอก ไฟล์ Bat จากที่อื่นมาแล้วค่อยแ้ก้ไข

ปล. สุดท้าย จริง ๆ ระวังเรื่องแสดงนามสกุลของเครื่องคอมพิวเตอร์นั้น ๆ เพราะเครื่องส่วนใหญ่ ถูกตั้งให้ไม่แสดงนามสกุลของไฟล์ ทำให้เราไม่รู้ว่าไฟล์นามสกุลอะไร .. (สามารถเปิด ให้เครื่องแสดงนามสกุลไฟล์ได้ โดยเปิด my computer - Tool - Folder option - View -
Hide extensions for known file types