คำสั่ง Unix ที่ใช้เป็นประจำ

ผู้เขียน/โดย : เกริก ภิรมย์โสภา (Krerk Piromsopa)
เขียนเมื่อ/ปรับปรุง : 2004-07-14 21:38:09

Unix เป็นระบบปฏิบัติการที่นิยมใช้กับแพร่หลายบนระบบขนาดใหญ่และในปัจจุบันยังมีระบบปฏิบัติการในลักษณะของ Unix-like เกิดขึ้นมากมายและ เริ่มเป็นที่นิยมใช้กันมากหลายยิ่งขึ้นบนเครื่องคอมพิวเตอร์ส่วนบุคคล เอกสารชุดนี้จึงสรุปคำสั่งบน Unix ที่มักใช้เป็นประจำโดยมีการยกตัวอย่างเปรียบเทียบกับ DOS/Windows พร้อมกับอธิบายถึงส่วนขยายเพิ่มเติมของคำสั่ง เพื่ออำนวยความสะดวกให้กับผู้เริ่มหัดใช้  Unix ทั่วไป

ความรู้พื้นฐานเกี่ยวกับ Unix ที่ควรทราบ

  1. Unix เป็นระบบปฏิบัติการแบบ Multi User และ Multi Tasking ซึ่งแตกต่างจาก
    Window ที่เป็นระบบปฏิบัติการแบบ Multi Tasking แต่ไม่เป็น Multi User
    กล่าวคือ ณ เวลาหนึ่งๆ บนระบบ Unix จะมีผู้ใช้งานเครื่องคอมพิวเตอร์ได้มากกว่า
    1 คนพร้อมกัน ทำให้ Unix มีระบบการจัดการ Permission และระบบรักษาความปลอดภัยของข้อมูลดีกว่าและซับซ้อนกว่า
    DOS/Window
  2. ระบบ File System ของ Unix นั้นจะเป็นระบบ Single Root กล่าวคือจะมี
    Logical Driver เพียง Drive เดียวเท่านั้น และกรณีมี Harddisk หลายตัวหรือหลาย
    Partition แต่ละ Partition จะถูกกำหนดให้เป็นเพียง Directory ย่อยของระบบ
    ซึ่งจะต่างกับ DOS/Window ที่เป็นระบบ Multiple Root ที่จะแยก Drive
    / Parition ตามตัวอักษร เช่น A: , C: เป็นต้น
  3. เนื่องจาก Unix เป็นระบบปฏิบัติการที่พัฒนาด้วยภาษา C ดังนั้นชื่อต่างๆ
    บน Unix จึงมีลักษณะเป็น Case-sensitive เช่น กรณีแฟ้มข้อมูลชื่อ MyFile
    กับ myfile จะเป็นแฟ้มข้อมูลคนละชื่อกัน
  4. ระบบ Permission ของ Unix จะแบ่งเป็น 3 ระดับคือ ระดับเจ้าของ (User
    หรือ Owner) ระดับกลุ่ม (Group) และ ระดับบุคคลอื่น (Other) โดยในแต่ละระดับจะแบ่งออกเป็นสิทธิในการประมวลผล
    (execute) การอ่าน (read) และ การเขียน (write) ทั้งรายละเอียดเพิ่มเติมให้ดูจากคำสั่ง
    chmod
  5. กรณีที่ผู้ใช้กระทำคำสั่งใดผิดพลาดนั้น บน Unix เราสามารถที่จะ Interrupt
    เพื่อยกเลิกการทำงานของคำสั่งหรือโปรแกรมนั้นๆ ได้โดยการกด CTRL + C
  6. มาตรฐานของระบบ Keyboard บนเครื่อง Unix บางเครื่องอาจจะแตกต่างกับมาตรฐาน
    Keyboard บนเครื่องที่เราใช้อยู่ ดังนั้นในบางกรณี เช่น การ telnet จากเครื่องอื่นเข้าสู่ระบบ
    Unix เราจึงไม่อาจใช้ Key บางอันตามปกติได้ เช่น backspace ดังนั้นเพื่ออำนวยความสะดวกให้เราสามารถใช้
    backspace ได้ตามปกติจึงต้องมีการ map key ใหม่ด้วยการเรียกคำสั่ง stty
    erase [backspace]

คำสั่งเกี่ยวกับการจัดการแฟ้มข้อมูล

ls

เป็นคำสั่งที่ใช้สำหรับแสดงแฟ้มข้อมูล (ในทำนองเดียวกับ
dir) มากจากคำว่า list

โครงสร้างคำสั่ง

ls [option]… [file]…

โดย option ที่มักใช้กันใน ls คือ

-l จะแสดงผลลัพธ์แบบ Long Format ซึ่งจะแสดง Permission
ของแฟ้มด้วย

-a จะแสดงแฟ้มข้อมูลทั้งหมด

-F จะแสดง / หลัง Directory และ * หลังแฟ้มข้อมูลที่
execute ได้

ตัวอย่าง

ls -l

ls -al

ls -F

ls /usr/bin

แหล่งข้อมูลเพิ่มเติม : ls –help และ man ls

cp

เป็นคำสั่งที่ใช้สำหรับสำเนาแฟ้มข้อมูล (ในทำนองเดียวกับ
copy) มาจากคำว่า copy

โครงสร้างคำสั่ง

cp source target

ตัวอย่าง

cp test.txt test1.bak

แหล่งข้อมูลเพิ่มเติม : cp –help และ man cp

mv

เป็นคำสั่งที่ใช้สำหรับการย้ายแฟ้มข้อมูลและ Directory
รวมถึงการเปลี่ยนชื่อด้วย (ในทำนองเดียวกับ move) มาจากคำว่า move

โครงสร้างคำสั่ง

mv source target

ตัวอย่าง

mv *.tar /backup

mv test.txt old.txt

mv bin oldbin

แหล่งข้อมูลเพิ่มเติม : mv –help และ man mv

rm

เป็นคำสั่งที่ใช้สำหรับลบแฟ้มข้อมูล (ในทำนองเดียวกับ
del) มาจากคำว่า remove

โครงสร้างคำสั่ง

rm [option]… [file]…

โดย option ที่มักใช้กันใน rm คือ

-r ทำการลบข้อมูลใน directory ย่อยทั่งหมด

-i โปรแกรมจะถามยืนยันก่อนทำการลบ

-f โปรแกรมจะลบข้อมูลทันที โดยไม่ถามยืนยันก่อน

ตัวอย่าง

rm -rf test/

rm test.doc

แหล่งข้อมูลเพิ่มเติม : rm –help และ man rm

คำสั่งเกี่ยวกับการจัดการ Directory / Folder

pwd

เป็นคำสั่งที่ใช้สำหรับแสดง Directory ปัจจุบัน (ในทำนองเดียวกับการพิมพ์
cd บน DOS) มาจากคำว่า print work directory

โครงสร้างคำสั่ง / ตัวอย่าง

pwd

cd

เป็นคำสั่งที่ใช้สำหรับเปลี่ยน directory ปัจจุบัน (ในทำนองเดียวกับ
cd) มาจากคำว่า change directory

โครงสร้างคำสั่ง

cd directory

โดย directory ในที่นี้อาจเป็น relative หรือ absolute
path ก็ได้

ตัวอย่าง

cd /usr

cd ~ (เป็นการเข้าสู่ home directory)

cd – (เป็นการยกเลิกคำสั่ง cd ครั้งก่อน)

cd .. (เป็นการออกจาก directory 1 ชั้น

ข้อควรระวัง : คำสั่ง cd บน UNIX จะต้องมีเว้นวรรคเสมอ

mkdir

เป็นคำสั่งที่ใช้สำหรับการสร้าง
directory (ในทำนองเดียวกับ dos) มาจากคำว่า make directory

โครงสร้างคำสั่ง

mkdir [option]… [file]…

โดย option ที่มักใช้กันใน mkdir คือ

-m จะทำการกำหนด Permissioin (ให้ดูคำสั่ง chmod เพิ่มเติม)

-p จะทำการสร้าง Parent Directory ให้ด้วยกรณีที่ยังไม่มีการระบุ

directory ในที่นี้อาจเป็น relative หรือ absolute
path ก็ได้

ตัวอย่าง

mkdir /home

mkdir -p -m755 ~/local/bin

แหล่งข้อมูลเพิ่มเติม : mkdir –help และ man mkdir

rmdir

เป็นคำสั่งที่ใช้สำหรับการลบ
directory (ในทำนองเดียวกับ dos) มาจากคำว่า remove directory

โครงสร้างคำสั่ง

rmdir [option]… [file]…

โดย option ที่มักใช้กันใน mkdir คือ

-p จะทำการลบ Child และ Parent Directory ตามลำดับ

directory ในที่นี้อาจเป็น relative หรือ absolute
path ก็ได้

ตัวอย่าง

rmdir /home

mkdir -p /home/local/data

แหล่งข้อมูลเพิ่มเติม : rmdir –help และ man rmdir

คำสั่งเกี่ยวกับการค้นหาแฟ้มข้อมูล และ Permission

file

บนระบบ DOS/Windows นั้น ประเภทของแฟ้มข้อมูลจะถูกระบุด้วยนามสกุล
แต่ใน UNIX จะไม่มีนามสกุลเพื่อใช้ระบุประเภทของแฟ้มข้อมูล ดังนั้นการหาประเภทของแฟ้มข้อมูลจะดูจาก
Context ภายในของแฟ้ม ซึ่งคำสั่ง file จะทำการอ่าน Content และบอกประเภทของแฟ้มข้อมูลนั้นๆ

โครงสร้างคำสั่ง

file [option]… file

ตัวอย่าง

file /bin/sh

file report.doc

แหล่งข้อมูลเพิ่มเติม : file –help และ man file

find

เป็นคำสั่งที่ใช้สำหรับค้นหาแฟ้มข้อมูล

โครงสร้างคำสั่ง

find [path].. expression

ลักษณะของ expression เช่น

-name [pattern] เพื่อใช้หาชื่อ file ตาม pattern
ที่ระบุ

-perm [+-] mode เพื่อใช้หา file ตาม mode ที่ต้องการ

-user NAME หา file ที่เป็นของ user ชื่อ NAME

-group NAME หา file ที่เป็นของ group ชื่อ NAME

ตัวอย่าง

find -name *.doc

find /usr -perm +111 (หาแฟ้มที่มี Permission อย่างน้อยเป็น
111)

แหล่งข้อมูลเพิ่มเติม : file –help และ man file

chown

ใช้สำหรับเปลี่ยนเจ้าของแฟ้มข้อมูลหรือ Directory

โครงสร้างคำสั่ง

chown [option]… owner[:group] file หรือ

chown [option]… :group file

โดย option ที่มักใช้กันใน chown คือ

-R เปลี่ยน Permission ของทุกๆ แฟ้มย่อยใน Directory

ตัวอย่าง

chown krerk:users /home/krerk

chown nobody data.txt

แหล่งข้อมูลเพิ่มเติม : chown –help และ man chown

chgrp

ใช้สำหรับเปลี่ยนกลุ่มเจ้าของแฟ้มข้อมูลหรือ Directory

โครงสร้างคำสั่ง

chgrp [option]… group file

โดย option ที่มักใช้กันใน chgrp คือ

-R เปลี่ยน Permission ของทุกๆ แฟ้มย่อยใน Directory

ตัวอย่าง

chgrp users /home/krerk

chown nobody data.txt

แหล่งข้อมูลเพิ่มเติม : chgrp –help และ man chgrp

chmod

ใช้สำหรับเปลี่ยนเจ้าของแฟ้มข้อมูลหรือ Directory

โครงสร้างคำสั่ง

chmod [option]… mode[mode] file หรือ

chmod [option]… octalmode file

โดย option ที่มักใช้กันใน chown คือ

-R เปลี่ยน Permission ของทุกๆ แฟ้มย่อยใน Directory

และการอ้างอิง mode จะใช้ตัวอักษร u g o a + – r w x
X s t u g o โดย

u หมายถึง User ผู้เป็นเจ้าของแฟ้ม

g หมายถึง Group ผู้เป็นเจ้าของแฟ้ม

o หมายถึง บุคคลอื่นๆ

a หมายถึง ทุกๆ กลุ่ม

r หมายถึง สิทธิในการอ่าน

w หมายถึง สิทธิในการเขียน/แก้ไข

w หมายถึง สิทธิในการ execute หรือ ค้นหา (ในกรณีของ
Directory)

ส่วน s t u g และ o นั้น จะขอกล่าวถึงในเอกสารเรื่อง
Unix Permission ต่อไป

เนื่องจากผลลัพธ์ของคำสั่ง ls -l จะแสดงเป็นลำดับ ดังตัวอย่างต่อไปนี้

$ ls -l krerk.jpg

-rw-r–r– 1 pok pok 13201 เม.ย. 21 2000 krerk.jpg

ดังนั้น การเขียน Permission อาจจะเขียนได้เป็นเลขฐาน
8 เช่น 644 หมายถึง 110100100 ซึ่งจะตรงกับ rw-r–r- เป็นต้น

ตัวอย่าง

chmod 750 /home/krerk (แก้ไขได้(เขียน)ได้เฉพาะเจ้าของแฟ้ม
และสามารถ execute ได้เฉพาะกลุ่มและเจ้าของเท่านั้น)

chmod 644 data.txt (rw-r–r– เจ้าของแฟ้ม อ่านและเขียนได้
กลุ่มเจ้าของแฟ้มและบุคคลอื่นๆ อ่านได้ )

(เพื่อประกอบความเข้าใจ ให้ผู้ใช้ลองเปลี่ยน mode และดูผลลัพธ์ด้วย
ls -l)

แหล่งข้อมูลเพิ่มเติม : chmod –help และ man chmod

คำสั่งเกี่ยวกับการดู และ แก้ไขข้อมูลในแฟ้มข้อมูล

cat

ใช้สำหรับดูข้อมูลภายในแฟ้มข้อมูล หรือ Standard Input
และแสดงผลออกมาทาง Standard Output (ในทำนองเดียวกันกับคำสั่ง type)
มาจากคำว่า concatinate

โครงสร้างคำสั่ง

cat [optioin]… [file]

โดย option ที่มักใช้กันใน chown คือ

-n เพื่อทำการแสดงเลขบรรทัด

ตัวอย่าง

cat data.txt

cat file1.txt file2.txt > file3.txt (นำข้อมูลใน
file1.txt และ file2.txt มาต่อกัน แล้วเก็บไว้ใน file3.txt)

แหล่งข้อมูลเพิ่มเติม : cat –help และ man cat

more

สืบเนื่องจากคำสั่ง cat ไม่เหมาะกับการดูข้อมูลที่มีความยาวมากๆ
ดังนั้น จึงได้มีการพัฒนา more ขึ้น เพื่อช่วยให้สามารถดูข้อมูลที่มีขนาดยาวได้เป็นช่วงๆ

โครงสร้างคำสั่ง

more file

ภายในโปรแกรม more จะมีคำสั่งเพื่อใช้งานคราวๆ ดังนี้

= แสดงเลขบรรทัด

q ออกจากโปรแกรม

<space> เลื่อนไปยังหน้าถัดไป

<enter> เลื่อนไปยังบรรทัดถัดไป

h แสดง help

ตัวอย่าง

more data.txt

แหล่งข้อมูลเพิ่มเติม : man more และ help ของ more

less

less เป็นการพัฒนาคำสั่ง more ให้มีประสิทธิภาพมากขึ้น
เนื่องจาก more จะไม่สามารถดูข้อมูลย้อนหลังได้ less จึงเป็นปรับปรุงและเพิ่มเติมเงื่อนไขบางอย่างให้
more

โครงสร้างคำสั่ง

less file

ตัวอย่าง

less data.txt

แหล่งข้อมูลเพิ่มเติม : man less และ help ของ less

head

จะแสดงส่วนหัวของแฟ้มข้อมูล ตามจำนวนบรรทัดที่ต้องการ

โครงสร้างคำสั่ง

head [option] file

โดย option ที่มักใช้กันใน chown คือ

-n เพื่อทำการระบุบรรทัดที่ต้องการ (หากไม่ระบุจะเป็น
10 บรรทัด)

ตัวอย่าง

head data.txt

head -n 10 data.txt

แหล่งข้อมูลเพิ่มเติม : head –help และ man head

tail

จะแสดงส่วนท้ายของแฟ้มข้อมูล ตามจำนวนบรรทัดที่ต้องการ

โครงสร้างคำสั่ง

tail [option] file

โดย option ที่มักใช้กันใน chown คือ

-n เพื่อทำการระบุบรรทัดที่ต้องการ (หากไม่ระบุจะเป็น
10 บรรทัด)

-c เพื่อระบุจำนวน byte

ตัวอย่าง

tail data.txt

tail -n 10 data.txt

แหล่งข้อมูลเพิ่มเติม : tail –help และ man tail

คำสั่งเกี่ยวกับผู้ใช้ และ การสื่อสาร

whoami

ใช้เพื่อแสดงว่าผู้ใช้ซึ่ง login เข้าสู่ระบบนั้น (ตัวเราเอง)
login ด้วยชื่ออะไร

โครงสร้างคำสั่ง/ตัวอย่าง

whoami หรือ

who am i (บน SUN OS หรือ UNIX บางตัวเท่านั้น)

who

ใช้เพื่อแสดงว่ามีผู้ใช้ใดบ้างที่กำลังทำงานอยู่บนระบบ

โครงสร้างคำสั่ง/ตัวอย่าง

who

finger

ใช้สำหรับแสดงรายละเอียดของผู้ใช้

โครงสร้างคำสั่ง

finger [user@host] หรือ

finger [@host]

กรณีไม่ระบุชื่อ finger จะแสดงรายละเอียดของ User ที่กำลัง logon อยู่บนเครื่องนั้นๆ
ทั้งหมด ซึ่งหากไม่ระบุ host ด้วย โปรแกรมจะถือว่าหมายถึงเครื่องปัจจุบัน

ตัวอย่าง

finger

finger krerk@vwin.co.th

finger krerk

finger @student.netserv.chula.ac.th

แหล่งข้อมูลเพิ่มเติม : man finger

talk

ใช้สำหรับการพูดคุยระหว่างผู้ใช้ด้วยกันบนระบบ ซึ่งผู้ใช้ทั้งทั้ง
2 ฝ่ายจะต้องพิมพ์คำสั่ง Talk ถึงกันก่อน จึงจะเริ่มการสนทนาได้

โครงสร้างคำสั่ง

talk user[@host] [tty]

กรณีไม่ระบุ host โปรแกรมจะถือว่าหมายถึงเครื่องปัจจุบัน (นอกจากนี้ยังมีคำสั่ง
ytalk ซึ่งสามารถพูดคุยได้พร้อมกันมากกว่า 2 คน) ซึงบางกรณีเราอาจจะต้องระบุ
tty ด้วยหากมีผู้ใช้ Log in เข้าสู่ระบบด้วยชื่อเดียวกันมากกว่า 1 หน้าจอ

ตัวอย่าง

talk krerk@vwin.co.th

แหล่งข้อมูลเพิ่มเติม : man talk

write

จะใช้เพื่อการส่งข้อมูลทางเดียวจากผู้เขียนไปถึงผู้รับบนเครื่องเดียวกันเท่านั้น

โครงสร้างคำสั่ง

write user [tty]

เมื่อมีการพิมพ์คำสั่ง write ผู้ใช้จะเห็นข้อความซึ่งจะแสดงว่าข้อความดังกล่าวถูกส่งมาโดยใคร
ซึ่งหากผู้รับต้องการตอบกลับ ก็จะต้องใช้คำสั่ง write เช่นกัน เมื่อพิมพ์เสร็จแล้วให้พิมพ์ตัวอักษร
EOF หรือ กด CTRL+C เพื่อเป็นการ interrupt ทั้งนี้ข้อความที่พิมพ์หลังจาก
write จะถูกส่งหลังจากการกด Enter เท่านั้น

ตัวอย่าง

write krerk

แหล่งข้อมูลเพิ่มเติม : man write

mesg

จะใช้เพื่อควบคุมว่าผู้อื่นมีสิทธิที่จะส่งข้อความ write
ถึงเราหรือไม่

โครงสร้างคำสั่ง

mesg [y | n]

โดย option มีความหมายคือ

y – หมายถึงผู้อื่นมีสิทธิที่จะส่งข้อความถึงเรา

n – หมายถึงผู้อื่นมีไม่สิทธิที่จะส่งข้อความถึงเรา

ตัวอย่าง

mesg y

mesg n

แหล่งข้อมูลเพิ่มเติม : man mesg

คำสั่งทั่วไป / อื่นๆ

man

เพื่อใช้แสดงรายละเอียดข้อมูลของคำสั่ง หรือ วิธีการใช้แฟ้มข้อมูลต่างๆ
มาจากคำว่า manual

โครงสร้างคำสั่ง

man [section]… manpage

โดย section ต่างๆ ของ manpage คือ

1 จะเป็น User Command

2 จะเป็น System Calls

3 จะเป็น Sub Routines

4 จะเป็น Devices

5 จะเป็น File Format

ตัวอย่าง

man printf

man 1 ls

แหล่งข้อมูลเพิ่มเติม : man man

tar

ใช่เพื่อการ backup และ restore file ทั้งนี้การ tar
จะเก็บทั้งโครงสร้าง directory และ file permission ด้วย (เหมาะสำหรับการเคลื่อนย้าย
หรือแจกจ่ายโปรแกรมบนระบบ UNIX) มาจากคำว่า tape archive

โครงสร้างคำสั่ง

tar [option]… [file]…

โดย option ที่มักใช้กันใน echo คือ

-c ทำการสร้างใหม่ (backup)

-t แสดงรายชื่อแฟ้มข้อมูลในแฟ้มที่ backup ไว้

-v ตรวจสอบความถูกต้องของการประมวลผล

-f ผลลัพธ์ของมาที่ file

-x ทำการ restore

ตัวอย่าง

tar -cvf mybackup.tar /home/*

tar -tf mybackup.tar

tar -xvf mybackup.tar

แหล่งข้อมูลเพิ่มเติม : tar –help และ man tar

alias

เพื่อกำหนด macro ให้ใช้คำสั่งได้สะดวกมากขึ้น (แบบเดียวกันกับการกำหนด
macro ด้วย doskey)

โครงสร้างคำสั่ง

alias macroname=’command’

ตัวอย่าง

alias ll=’ls -F -l’

แหล่งข้อมูลเพิ่มเติม : man ของ Shell ที่ใช้อยู่

echo

แสดงข้อความออกทาง standard output

โครงสร้างคำสั่ง

echo [option]… msg

โดย option ที่มักใช้กันใน echo คือ

-n ไม่ต้องขึ้นบรรทัดใหม่

ตัวอย่าง

echo -n “Hello”

echo “Hi..”

free -k

แหล่งข้อมูลเพิ่มเติม : man echo

free

แสดงหน่วยความจำที่เหลืออยู่บนระบบ

โครงสร้างคำสั่ง

free [-b|-k|-m]

โดย option ที่มักใช้กันใน free คือ

-b แสดงผลลัพธ์เป็นหน่วย byte

-k แสดงผลลัพธ์เป็นหน่วย kilobyte

-m แสดงผลลัพธ์เป็นหน่วย megabyte

ตัวอย่าง

free

free -b

free -k

แหล่งข้อมูลเพิ่มเติม : free–help และ man free

sort

ใช้เพื่อทำการจัดเรียงข้อมูลในแฟ้มตามลำดับ (ทั้งนี้จะถือว่าข้อมูลแต่ละบรรทัดเป็น
1 record และจะใช้ field แรกเป็น key)

โครงสร้างคำสั่ง

sort [option] file

ตัวอย่าง

sort data.txt

แหล่งข้อมูลเพิ่มเติม : sort –help และ man sort

การ Redirection และ Pipe

ทั้ง DOS/Windows และ UNIX ต่างก็มีความสามารถในการ
Redirection และ Pipe ด้วยกันทั้งสิ้น ซึ่งประโยชน์ของการ Redirection
และ การ Pipe คือการที่สามารถนำโปรแกรมเล็กๆ หลายโปรแกรมมาช่วยกันทำงานที่ซับซ้อนมายิ่งขึ้นได้

การ Pipe คือการนำผลลัพธ์ที่ได้จากโปรแกรมหนึ่ง
ไปเป็นอินพุทของอีกโปรแกรมหนึ่ง เช่น

ls | sort

เป็นการนำผลลัพธ์ที่ได้จาก ls ส่งเป็นอินพุตให้โปรแกรม
sort ทำงานต่อเป็นต้น

การ Redirection คือการเปลี่ยนที่มาของอินพุต และ เอาพุตที่แสดงผลลัพธ์
จาก Keyboard หรือ จอ Monitor เป็นแฟ้มข้อมูล หรือ Device ต่างๆ เช่น

ls >list.txt

เป็นการนำผลลัพธ์ที่ได้จาก ls เก็บลงในแฟ้มข้อมูลชื่อ
list.txt เป็นต้น

ทั้งนี้ การ Redirection จะเป็นการสร้างแฟ้มข้อมูลใหม่เสมอ
ในกรณีที่ต้องการเขียนข้อมูลต่อท้ายอาจทำได้โดยการใช้ >> แทน >
เช่น

ls >list.txt

pwd >> list.txt

ผลลัพธ์จากคำสั่ง pwd จะแสดงต่อท้ายผลลัพธ์จากคำสั่ง
ls ใน list.txt

ในทำนองเดียวกัน เราสามารถใช้ Redirection เพื่อรับข้อมูลจาก
File ได้ซึ่งจะช่วยให้เราสามารถ Run Program ที่ต้องการ Input แบบ Batch
ได้ (ซึ่งจะกล่าวถึงในการเขียน Shell Script ต่อไป)

ใช้คำสั่ง Unix บน DOS/Windows

ปัจจุบันได้มีผู้ Port โครงสร้างและ Utility
ของ Unix ไปยัง Window หรือ WindowNT ภายใต้ชื่อ Project “Cygwin”
ซึ่งผู้ใช้สามารถทำงานบน Window ได้เหมือนกับการทำงานบน Unix ทุกประการ
ทั้งนี้รวมถึงการพัฒนาโปรแกรมด้วย ซึ่งในปัจจุบัน Project ดังกล่าวดูแลโดย
RedHat ดังนั้นหากผู้อ่านท่านใดมีความสนใจ สามารถหาข้อมูลเพิ่มเติมและ
Download ได้จาก http://www.cygwin.com/
หรือ http://www.cygnus.com/

นอกจากนี้ยังมีการ Port โปรแกรมต่างๆ ในโครงการของ
GNU ไปยังระบบ DOS ภายใต้ชื่อ DJGPP ซึ่งประกอบไปด้วย Compiler และโปรแกรมต่างๆ
บน Unix โดยสามารถหาข้อมูลเพิ่มเติมได้จาก http://www.gnu.org/

ตารางเปรียบเทียบการใช้คำสั่งระหว่าง DOS
และ UNIX

DOS UNIX หมายเหตุ
ATTRIB +-attrib file chmod mode file ระบบ Permission แตกต่างกัน
BACKUP tar cvf file file การทำงานแตกต่างกัน
CD dir cd dir/ คล้ายคลึงกัน
COPY file1 file2 cp file1 file2 เหมือนกัน
DEL file rm file เหมือนกัน
DELTREE rm -R file เหมือนกัน
DIR ls หรือ ls -al และ du , df dir จะแสดงเนื้อที่ที่ใช้ และ เนื้อที่ที่เหลือด้วย ซึ่ง UNIX ต้องดูด้วย
du และ df แทน
DIR file /S find . -name file บน Unix จะทำงานได้ดีกว่า
DOSKEY name command alias name=’command’ เป็นการสร้าง macro ในทำนองเดียวกัน
ECHO msg echo “msg” เหมือนกัน
FC file1 file2 diff file1 file2 เหมือนกัน
HELP command man command ทำนองเดียวกัน
MEM free ทำนองเดียวกัน
MD dir หรือ MKDIR dir mkdir dir เหมือนกัน
MORE < file more file หรือ less file less จะทำงานได้ดีกว่า
MOVE file1 file2 mv file1 file2 เหมือนกัน
RD dir หรือ RMDIR dir rmdir dir หรือ rm -d dir เหมือนกัน
RESTORE tar xvf file การทำงานแตกต่างกัน
SORT file sort file เหมือนกัน
TYPE file more file หรือ less file less จะทำงานได้ดีกว่า

เอกสารอ้างอิง

  • R. Thomas, J. Yates, “A USER GUIDE TO THE UNIX
    SYSTEM”, OSBORNE/McGRAW-HILL,2nd Edition,1987.
  • G. Gonzato,”From DOS/Windows to Linux HOWTO”
  • Unix man pages Document.

 

Comment1
เนื้อหาน่าสนใจมาก และมีประโยชน์สำหรับผู้ที่สนใจหรือชอบค้นคว้าข้อมูล
From:ชลนิชา สารีสุข <choonicha_15< at >hotmail.com> Date: 2005-06-18 11:31:22

 

Comment2
ขอบคุณนะครับ ที่มีไว้สำหรับคนที่สนใจที่จะศึกษา
From: <> Date: 2005-07-04 10:26:38

 

Comment3
สวัสดีคะอยากได้คำสั่งเกี่ยวกับ Linux ดีมากเลยคะ
From: <lukhana< at >hotmail.com> Date: 2006-02-21 02:04:18

 

Comment4
ขอบคุณคะที่ทำให้ทำงานที่อาจารย์สั่งได้สำเร็จถ้าไม่ได้ของพี่หนูคงแย่เยี่ยมจริงอะเยี่ยมจริงอะเยี่ยมจริงอะจากเด็กบึง….
From: <> Date: 2006-02-21 02:47:48

 

Comment5
เยี่ยมจริง(3ครั้ง)
From: <> Date: 2006-02-21 03:11:43

 

Comment6
well done !
From:Good <> Date: 2006-03-08 02:12:52

 

Comment7
อยากได้ คำสั้งที่ทำงานเกี่ยวกับ ฐานข้อมูล สามารถ ไปหาได้ที่ใหนครับ
From:alex <alex_ka5< at >hotnail.com> Date: 2006-03-19 23:18:56

 

Comment8
อยากได้ คำสั้งที่ทำงานเกี่ยวกับ ฐานข้อมูล สามารถ ไปหาได้ที่ใหนครับ
From:alex <alex_ka5< at >hotnail.com> Date: 2006-03-19 23:18:56

 

Comment9
อยากรู้คำสั่งเกี่ยวกับการบันทึกไฟล์ เพราะเห็นแต่คำสั่งเรียกดู,ค้นหาและลบไฟล์ เท่านั้น
From:Mura@ek <> Date: 2006-04-11 06:15:30

 

Comment10
อยากรู้คำสั่งที่ใช้ในการส่งข้อมูลมากๆๆครับ
From:rungring <fugpoh< at >thaimail.com> Date: 2006-05-29 02:55:59

 

Comment11
ส่งข้อมูลแบบไหนหรือครับEmail? File Transfer? หรือว่าอย่างไร ?

คำถามไม่ค่อยชัดเจนครับ ตอบไม่ถูก :-)

From:krerk <> Date: 2006-05-29 09:15:39

 

Comment12
อยากได้แบบที่ใช้กับระบบเครือข่ายอะครับ
From:bios <bios_team< at >hotmail.com> Date: 2006-06-06 01:46:39

 

Comment13
ใครออนอยู่บ้างครับ อยากทราบ โปรแกรมประยุกต์ที่ใช้บน Unixรบกวนยกตัวอย่างสัก 5 โปรแกรม นะครับ ๆ
From:thepopmaster <> Date: 2006-06-08 04:07:44

 

Comment14
มีประโยชน์มากๆๆๆครับ ทำให้ป๋มมีความรู้ และมีงานส่งอาจารย์
From:Toney <Prommanee< at >hotmail.com> Date: 2006-06-08 04:12:58

 

Comment15
ขอบคุณที่แสดงความรู้มาแจกจ่ายผู้ที่สนใจครับ
From:ชา <cha634< at >hotmail.com> Date: 2006-06-08 05:55:49

 

Comment16
อยากรู้เกี่ยวข้อดีข้อเสียของ Unix อะคับ จะส่งพรุ่งนี้แย้ว
From:maxky <maxnum_mail< at >hotmail.com> Date: 2006-06-10 21:00:11

 

Comment17
อยากทราบเกี่ยวกับการแปลง file ที่เป็น Unix ให้เป็น Dos สามารถทำได้หรือไม่
From:A <j_jinp< at >hotmail.com> Date: 2006-06-17 05:09:34

 

Comment18
ไม่รู้ว่าอาจารย์ยังจำลูกศิษย์ที่สอนที่หอการค้าได้หรือเปล่าในวิชาสถาปัตยกรรมคอมพิวเตอร์ ขอให้อาจารย์มีความสุขมากๆค่ะ ถึงแม้ว่าอาจารย์จะสอนหลายปีแล้วก็ตามแต่ก็ยังเป็นอาจารย์ที่ดีสำหรับลูกศิษย์คนนี้ค่ะ
From:Banana <phetcharawan< at >hotmail.com> Date: 2006-06-17 10:47:05

 

Comment19
วิธีการเปลี่ยน file ระหว่าง unix และ dos ให้ดูคำสั่งunix2dos และ dos2unix ดูนะครับ
From:เกริก <krerk< at >vwin.co.th> Date: 2006-06-20 17:38:21

 

Comment20
ขอบคุณมากมายครับ
From:ชายเล็ก <shaylek< at >hotmail.com> Date: 2006-06-21 00:53:34

 

Comment21
โอโห สุดยอด
From:คุณ บอล <-> Date: 2006-07-04 03:17:52

 

Comment22
น่าจะมีคำสั่งมากกว่านี้คะ แต่ตอนนี้ที่มีก็โอเคนะคะ
From:nuhin <nuhin< at >hotmail.com> Date: 2006-07-07 04:37:21

 

Comment23
ขอบคุณมาก
From:ริช <rit_m< at >thaimail.com> Date: 2006-07-16 23:12:52

 

Comment24
เยี่ยมเลยครับ มาเจอทันช่วยชีวิตผมพอดีเป๊ะเรยยยยย Thanks.
From: <teety_2< at >hotmail.com> Date: 2006-07-25 08:27:12

 

Comment25
จะ Upload ไฟล์ในเครื่องขึ้นไปบน Telnet ได้ยังไงครับ ลองใช้คำสั่ง put แล้วแต่ไม่ได้ ช่วยทีครับ l1210121@mut.ac.th ครับ ขอบคุณล่วงหน้าครับ
From:Sillylek <l1210121< at >mut.ac.th> Date: 2006-08-26 09:08:29

 

Comment26
Telnet ไม่ได้ออกแบบไว้ให้สำหรับรับ/ส่งไฟล์ครับลองดูโปรแกรม FTP นะครับ
From:เกริก <krerk< at >vwin.co..th> Date: 2006-08-27 14:31:50

 

Comment27
ใครมีประสบการเรื่องออกฝึกงานแล้วย้ายที่มั่งครับทนไม่ไหวแล้วที่ฝึกงานยากมากครับช่วยแนะนำที่ครับส่งมาที่เมลล์นะครับ
From:Rukawa <narakung_11< at >hotmail.com> Date: 2006-10-31 21:42:44

 

Comment28
ดีครับ ให้ความรู้ และมีประโยชน์สำหรับผู้ที่สนใจ
From:rung <> Date: 2006-11-14 21:03:14

 

Comment29
Thank for knowledge. ^^
From:Joke <> Date: 2006-12-13 23:23:18

 

Comment30
ชอบมากสั้นๆๆเข้าใจง่าย ขอบคุณมาก
From:sira <> Date: 2006-12-19 22:19:22

 

Comment31
เนื้อหาดีมากๆเลยค่ะ ขอบคุณมากๆนะค่ะที่ทำให้มีความเข้าใจในคำสั่งต่างๆของลีนุกส์มากยิ่งขึ้น จัดทำได้ดีมากค่ะ
From:Com SCI <> Date: 2007-01-11 10:51:47

 

Comment32
อยากได้คำสั่ง vi ช่วยหน่อย
From:c tole <yolora_22< at >hotmail.com> Date: 2007-01-26 14:48:46

 

Comment33
Thanks
From:jod <> Date: 2007-02-09 21:13:21

 

Comment34
มี labview for unix บ้างไหมครับท่านที่เคารพ
From:ผู้กอง <sapha< at >hotmail.com> Date: 2007-04-03 19:30:44

 

Comment35
อยากรู้ว่าในcommand ใช้ว่าping ใน unix ใช้ว่าอะไรroute

arp

From:titapol <titapol_baligamin< at >hotmail.com> Date: 2007-04-09 10:11:44

 

Comment36
ขอบคุณ ครับ กำลังเรียน UNIX อยู่เลยแจ๋วครับ
From:นศ.ม.กรุงเทพฯ <> Date: 2007-04-20 07:34:07

 

Comment37
ช่วยเปรียบเทียบคำสั่งDOSกับWINDOWSว่าเหมือนหรือต่างกันอย่างไร ด่วน!
From:SUZEE <404865071< at >bala.yru.ac.th> Date: 2007-06-28 12:46:48

 

Comment38
งานต้องส่งวันนี้แล้วนะ ช่วยหน่อย เครียด
From:นักศึกษา <> Date: 2007-06-28 12:51:13

 

Comment39
อยากรู้ข้อดี – ข้อเสีย ของ Dos window อ่ะค่ะ ใครรู้ช่วยบอกทีนะคะ ด่วนมาก
From:miley <miley_slipper_555< at >hotmail.com> Date: 2007-07-03 20:25:53

 

Comment40
อยากรู้ข้อดี – ข้อเสีย ของ Dos window อ่ะค่ะ ใครรู้ช่วยบอกทีนะคะ ด่วนมาก
From:miley <miley_slipper_555< at >hotmail.com> Date: 2007-07-03 20:26:12

 

Comment41
อยากรู้ข้อดี – ข้อเสีย ของ Dos window อ่ะค่ะ ใครรู้ช่วยบอกทีนะคะ ด่วนมาก
From:miley <miley_slipper_555< at >hotmail.com> Date: 2007-07-03 20:26:20

 

Comment42
อยากได้ วิธีการสอนการเขียน shell scrip คะ
From:mus <mus_sul< at >hotmail.com> Date: 2007-07-30 00:25:54

 

Comment43
อยากทราบฃ้อดีของ UNIX
From:55555 <> Date: 2007-08-20 09:06:38

 

Comment44
ขอบคุณมากค่ะ ที่ให้ขอมูลดิฉันได้มีเนื้อหาทำรายงานส่งอาจารย์เยอะเยย
From:1/1 คอมฯ svc <> Date: 2007-08-21 15:14:34

 

Comment45
ดีครับ
From:กุ่ย <pim_kuy< at >hotmail.com> Date: 2007-09-28 09:56:03

 

Comment46
ขอบคุณครับ.. มีประโยชน์มาก…..
From:ขอบคุณ <> Date: 2007-10-02 16:24:26

 

Comment47
สุดยอดขอบคุณครับ
From:เชียร <> Date: 2007-10-10 08:56:06

 

Comment48
ขอบคุณค่ะ ที่นำความรู้มาให้ฉลาดขึ้นเยอะเลย
From:แตงโม <nut_shinoda< at >hotmail.com> Date: 2007-10-18 20:21:19

 

Comment49
คงจะยากครับสำหรับมือใหม่แต่มีประโยชน์มากครับขอบคุณครับ
From:ipconfig54 <sanitseedam< at >hotmail.com> Date: 2007-10-19 08:39:47

 

Comment50
ดีครับขอบคุณมากที่นำมากเสนอเเนะหัยครับขอบคุณครัขอบคุญบ จริงๆครับ
From:นาย Mr..D <nonniknam< at >hotmail.com> Date: 2007-11-02 15:45:27

 

Comment51
<b>ไม่เห็นมีคำสั่ง ping</b>
From:LoveAi <loveaiotsuka< at >hotmail.com> Date: 2007-11-13 17:15:52

 

Comment52
ทั้งหมดมา ไม่ มี คำสั่งสร้างไฟล์ เลยหรอครับ
From:จู <999> Date: 2007-11-15 13:07:47

 

Comment53
สร้างไฟล์ touch ]ชื่อ] ครับ
From:…. <> Date: 2007-11-27 21:06:29

 

Comment54
calendercmp

diff

dir

md

คือคำสั่งอะไรช่วยบอกที

From:ict <> Date: 2007-12-04 12:44:57

 

Comment55
cal แสดงปฏิทินdiff กับ cmp ไว้เปรียบเทียบไฟล์

dir คือ ls

md เป็นตัวย่อของ mkdir

From:เกริก <> Date: 2007-12-04 14:01:38

 

Comment56
ขอบคุณมากครับ
From:ict <> Date: 2007-12-04 20:22:01

 

Comment57
/(root)/mnt

format

chkdsk

copy

del

type

คือคำสั่งอไรช่วยบอกอีกที

From:ict <> Date: 2007-12-04 20:31:23

 

Comment58
/mntคือคำสั่งอไรช่วยบอกอีกทีด่วนมากๆๆๆๆๆครับ
From: <> Date: 2007-12-05 19:51:20

 

Comment59
อยากรู้คำสั่ง debug ใน linux ใครรู้บ้างช่วยบอกหน่ยค่ะ
From:ขวัญ <> Date: 2007-12-09 13:41:08

 

Comment60
การ config ให้เครื่อง server สามารถทำงานได้ โดยในเครื่องมีทั้ง web server และ mail server และ dnd server ทำไงครับคิดปัญหาตรงที่ว่าเครื่องจ่ายไอพีแล้วแต่ไม่มาสารถออกเน็ตได้นะครับผม
From:nelan <timegood_22< at >hotmail.com> Date: 2008-01-15 16:57:18

 

Comment61
dns server นะครับเขียนผิด
From:nelan <> Date: 2008-01-15 17:00:23

 

Comment62
มี router ยัง
From: <> Date: 2008-01-15 22:36:18

 

Comment63
มีลงโปรแกรม NAT มั๊ย
From: <> Date: 2008-01-15 22:36:39

 

Comment64
อยากได้คำสั่งที่สามารถ ดึง memory ที่ไม่ได้ใช้งานกลับมานะครับ
From:เด็กน้อย <> Date: 2008-02-05 00:18:34

 

Comment65
สุดยอดมากค่ะกำลังจะสอบพอดีเลย

ฮิฮิ

From:คนโง่คอม <arzenigh< at >hotmail.com> Date: 2008-06-14 17:29:48

 

Comment66
เข้าใจขึ้นเยอะ
From:เล็ก <pungka_144< at >hotmail.com> Date: 2008-07-13 14:34:26

 

Comment67
ดีค่ะ ขอบคุณที่ให้คำตอบเรา
From:ratdy <julairats< at >yahoo.com> Date: 2008-07-22 11:43:50

 

Comment68
ขอบคุณมากครับ มีประโยชน์มากเลยครับ
From:bunjerd <morientes_s< at >hotmail.com> Date: 2009-05-18 13:42:05

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Connect with Facebook

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>