พื้นที่ฝึก

Bash

เส้นทางฝึก Bash ตั้งแต่ศูนย์

นิยามก่อน

Bash คืออะไร

Bash ใช้เขียนคำสั่งที่ชัดเจน ที่นี่เรียนเป็น เส้นทางฝึก Bash ตั้งแต่ศูนย์ เริ่มจากภาพเดียว input ผ่านขั้นตอนแล้วกลายเป็น output

ข้อมูลรันขั้นต่ำไฟล์ script.shรัน bash script.shนิสัย เรียน Bash ทีละส่วนเล็ก แล้วพิมพ์ตัวอย่างสั้นและรัน
โปรแกรม

ชุดคำสั่งที่ทำงานตามลำดับ

ค่าและตัวแปร

ค่าคือข้อมูล ตัวแปรคือชื่อที่เก็บข้อมูล

ฟังก์ชัน

งานย่อยที่มีชื่อ รับ input และสร้างผลลัพธ์

runtime

POSIX shell compatible terminal รันโค้ดจาก script.sh

โค้ดแรกที่อ่านง่าย

Commands

pwd ls cd echo
name="Ada"
echo "$name"
ผลลัพธ์ Ada

ตระกูลภาษา

ผังตระกูล Bash

ดูว่า Bash มาจากไหน ใกล้กับภาษาใด และควรเรียนอะไรต่อ

ราก
shUnixawk
ปัจจุบันBashตระกูล automation และ command
ตระกูลตระกูล automation และ command
เหมาะกับ

เหมาะกับ เส้นทางฝึก Bash ตั้งแต่ศูนย์

เริ่มจากศูนย์

1อ่านกฎหนึ่งข้อ2ทายผลลัพธ์3พิมพ์จากความจำ4รันการตรวจ5ทำซ้ำโดยเปลี่ยนหนึ่งจุด

คลังคำถาม

ค้นหาก่อนฝึก

เลือกขั้นหรือค้นหาแบบฝึกของภาษานี้ แล้วเปิดข้อที่ต้องการทันที

18 รายการ
Q 1ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 1

Bash ข้อ 1 เลือกคำอธิบายที่ตรงกับ echo output ที่สุด

Q 2ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 2

Bash ข้อ 2 เลือกคำอธิบายที่ตรงกับ variable assignment ที่สุด

Q 3ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 3

Bash ข้อ 3 เลือกคำอธิบายที่ตรงกับ pipe ที่สุด

Q 4ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 4

Bash ข้อ 4 เลือกคำอธิบายที่ตรงกับ for loop ที่สุด

Q 5ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 5

Bash ข้อ 5 เลือกคำอธิบายที่ตรงกับ echo output ที่สุด

Q 6ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 6

Bash ข้อ 6 เลือกคำอธิบายที่ตรงกับ variable assignment ที่สุด

Q 7ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 7

Bash ข้อ 7 เลือกคำอธิบายที่ตรงกับ pipe ที่สุด

Q 8ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 8

Bash ข้อ 8 เลือกคำอธิบายที่ตรงกับ for loop ที่สุด

Q 9ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 9

Bash ข้อ 9 เลือกคำอธิบายที่ตรงกับ echo output ที่สุด

Q 10ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 10

Bash ข้อ 10 เลือกคำอธิบายที่ตรงกับ variable assignment ที่สุด

Q 11ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 11

Bash ข้อ 11 เลือกคำอธิบายที่ตรงกับ pipe ที่สุด

Q 12ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 12

Bash ข้อ 12 เลือกคำอธิบายที่ตรงกับ for loop ที่สุด

Q 13ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 13

Bash ข้อ 13 เลือกคำอธิบายที่ตรงกับ echo output ที่สุด

Q 14ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 14

Bash ข้อ 14 เลือกคำอธิบายที่ตรงกับ variable assignment ที่สุด

Q 15ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 15

Bash ข้อ 15 เลือกคำอธิบายที่ตรงกับ pipe ที่สุด

Q 16ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 16

Bash ข้อ 16 เลือกคำอธิบายที่ตรงกับ for loop ที่สุด

Q 17ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 17

Bash ข้อ 17 เลือกคำอธิบายที่ตรงกับ echo output ที่สุด

Q 18ตัวเลือกขั้น 1 นิยาม

Bash ข้อ 18

Bash ข้อ 18 เลือกคำอธิบายที่ตรงกับ variable assignment ที่สุด

ปรนัย

Bash ข้อ 1

Q 1ตัวเลือกใหม่

Bash ข้อ 1 เลือกคำอธิบายที่ตรงกับ echo output ที่สุด

echo "$name"

อ้างอิง

รูปแบบของ script.sh

POSIX shell compatible terminalbash script.sh
ทวนจากความจำอ่านจุดเล็กแล้วเขียนใหม่โดยไม่ดู
ไล่โค้ดเขียนค่าตัวแปรทีละบรรทัดก่อนรัน
พิมพ์เองคัดลอกให้น้อย พิมพ์ให้มาก แล้วแก้ error ทีละจุด

pwd ls cd echo

Commands

name="Ada"
echo "$name"
  • Quote variables
  • Start with echo
  • Run in a small folder first

grep sort uniq wc

Pipes

printf "a\na\nb\n" | sort | uniq
  • Pipe output to the next command
  • Use rg or grep for search
  • Count with wc

shebang variables if loops

Scripts

for file in *.txt; do
  echo "$file"
done
  • Use set -e for safer scripts
  • Quote paths
  • Dry run before deleting