การเขียน Shell Script เบื้องต้น

11 มี.ค. 2020 , 6,452 Views   , หมวดหมู่ Linux โค๊ดดิ้ง   , ป้ายกำกับ:, ,


Shell script ที่นิยมใช้

  • Bournr shell (/bin/sh) เป็น shell ในยุคแรกๆ ที่มีใช้กันอย่างแพร่หลาย มีการกำหนดโครงสร้างภาษาคล้ายๆ กับภาษาอัลกอ (Algo) สามารถเขียน shell script ได้ และยังเป็น starndard shell ที่มีใน UNIX ทุกตัว และยังสามารถย้าย shell script ไปยัง UNIX ระบบอื่นโดยไม่ต้องแก้ไขอะไรได้อีกด้วย จะมี default prompt เป็นเครื่องหมาย “ $ ”
  • C shell (/bin/csh) เป็น shell ที่พัฒนาขึ้นมาหลังจาก Bourne shell มีรูปแบบคำสั่งและไวยากรณ์เหมือนกับภาษา C มี function การทำงานหลายที่ดีและอย่างสะดวก อีกทั้งยังสามารถควบคุมการไหลของข้อมูลได้ดีกว่า Bourne shell และยังมีความสามารถในการเรียกใช้คำสั่งที่ใช้ไปแล้ว จะมี default prompt เป็นเครื่องหมาย “ % ”
  • Korn shell (/bin/ksh) เป็น shell ที่พัฒนามาจาดต้นแบบของ Bourne shell และ C shell สามารถทำงานใน function ของ Bourne shell ได้ทุกอย่าง การเขียน shell script ทำได้ง่ายและรัดกุมขึ้น  สามารถนำคำสั่งที่ใช้ไปแล้วกลับมา execute ไปใหม่ได้  ถือได้ว่า Korn shell เป็นการรวมเอาข้อดีของ Bourne shell  และ C shell มาไว้ด้วยกัน แต่ไม่ได้มีใน UNIX ทุกตัว จะมี default prompt เป็นเครื่องหมาย “ $ ”
  • Bournr again shell (/bin/bash หรือ /usr/local/bin/bash) เป็นการเอา Bournr shell นำกลับมาพัฒนาใหม่ สามารถทำงานแบบ line editing ได้ และยังได้เพิ่มประสิทธิภาพในการทำงานอีกหลายอย่าง bash shell นี้ไม่ใช่ standard UNIX shell แต่เป็น default shell ของ linux ในปัจจุบัน จะมี default prompt เป็นเครื่องหมาย “ $ ”

การสร้าง Shell script

  • เริ่มจากสร้าไฟล์ shell script ขึ้นมาก่อน

    ข้อมูลในไฟล์เริ่มจาก กำหนด interpreter หรือ shebang ก่อน
    บรรทัดแรกของ shell script เราต้องกำหนดว่าใช้ interpreter ใดในการ load ข้อมูล file ซึ่งสัญลักษณ์ที่ใช้คือ #!<shell program>

    • #!/bin/sh
    • #!/bin/csh
    • #!/bin/bash
    • #!/bin/ksh
    • #!/usr/bin/perl
    • #!/usr/bin/env python

  • เขียนชุดคำสั่ง Command Line สามารถใช้คำสั่ง Linux ได้ดูเพิ่มเติมตามลิ้งค์นี้ คำสั่ง Linux พื้นฐาน คำสั่ง Linux ที่น่าสนใจ

    จากนั้นก็ Save ไฟล์เก็บใว้ก่อน test.sh

  • ทำการกำหนดสิทธิ์ให้สามารถ execute ไฟล์นี้ได้

  • การรันไฟล์ Shell script ให้พิมพ์ fullpath ของ shell script หรือ ถ้าอยู่ใน directory ก็ใช้ ./<shell script> แล้วกด Enter

ดูเพิ่มเติม

การเขียน Shell Script เบื้องต้น หลักการทำงาน และ เงื่อนไขการใช้

 


ป้ายกำกับ:, ,