พื้นฐานสคริปต์
ตัวแปรและลูป
พื้นฐานสคริปต์ เป็นบทเรียน Ethical Hacking Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ethical Hacking Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ethical Hacking Academy มีบทเรียนทั้งหมด 4 บทเรียน
เหตุใดจึงใช้ Bash เพื่อความปลอดภัย
Bash เป็นเชลล์เริ่มต้นบน Linux และพบได้แทบทุกที่ที่ผู้ทดสอบการเจาะระบบทำงาน การเขียนสคริปต์ด้วย Bash ช่วยทำให้การสำรวจซ้ำ ๆ เป็นอัตโนมัติ เชื่อมเครื่องมือเข้าด้วยกัน และประมวลผลเอาต์พุตโดยไม่ต้องเขียนคำสั่งใหม่ด้วยตนเอง
บทเรียนนี้ครอบคลุมพื้นฐาน ได้แก่ shebang ตัวแปร เงื่อนไข และลูป
Shebang
ทุกสคริปต์เริ่มต้นด้วย shebang ซึ่งบอกระบบว่าต้องใช้ตัวแปลภาษาใด จากนั้นทำให้ไฟล์เรียกใช้ได้และเรียกใช้ไฟล์นั้น
#!/bin/bash
echo 'Hello from a script'
# chmod +x script.sh
# ./script.shตัวแปร
กำหนดค่าด้วยการไม่เว้นวรรคข้าง = อ่านค่ากลับด้วยเครื่องหมายดอลลาร์ ใส่เครื่องหมายคำพูดให้ตัวแปรเพื่อป้องกันปัญหาการแยกคำที่ไม่คาดคิด
target=192.168.56.10
port=80
echo "Scanning $target on port $port"การแทนที่คำสั่ง
เก็บเอาต์พุตของคำสั่งลงในตัวแปรโดยใช้ $( ) นี่คือวิธีที่สคริปต์ตอบสนองต่อผลลัพธ์จากเครื่องมือ
host=$(hostname)
count=$(ls /etc | wc -l)
echo "$host has $count files in /etc"การอ่านอาร์กิวเมนต์
สคริปต์รับอาร์กิวเมนต์เป็น $1, $2 และต่อไปเรื่อย ๆ $# คือจำนวนอาร์กิวเมนต์ ส่วน $0 คือชื่อสคริปต์
#!/bin/bash
target=$1
echo "Target is $target"
# run: ./scan.sh 10.0.0.5เงื่อนไข
ใช้ if ร่วมกับวงเล็บทดสอบเพื่อแยกเส้นทางการทำงาน การทดสอบตัวเลขใช้ -eq, -gt การทดสอบสตริงใช้ = และการทดสอบไฟล์ใช้ -f, -d
if [ "$#" -eq 0 ]; then
echo 'Usage: scan.sh <target>'
exit 1
fiลูป For
ลูป for วนซ้ำผ่านรายการ เหมาะอย่างยิ่งสำหรับกวาดตรวจพอร์ตหรือโฮสต์
for port in 21 22 80 443; do
echo "Checking port $port"
doneวนซ้ำผ่านช่วงค่า
การขยายวงเล็บปีกกาและ seq ใช้สร้างลำดับค่า ซึ่งมีประโยชน์สำหรับสแกนช่วง IP
for i in {1..10}; do
echo "192.168.56.$i"
doneลูป While
while จะทำซ้ำตราบใดที่เงื่อนไขยังเป็นจริง การอ่านไฟล์ทีละบรรทัดเป็นรูปแบบที่ใช้บ่อยในการประมวลผลรายการโฮสต์หรือรายการคำ
while read line; do
echo "Host: $line"
done < hosts.txtฟังก์ชันและรหัสการออก
จัดกลุ่มตรรกะที่นำกลับมาใช้ใหม่ได้เป็นฟังก์ชัน ทุกคำสั่งจะกำหนดค่าให้ $? ซึ่งเป็นรหัสการออก โดยค่า 0 หมายถึงสำเร็จ สคริปต์ใช้ค่านี้เพื่อตัดสินใจว่าจะทำอะไรต่อ
check() {
ping -c1 "$1" >/dev/null 2>&1
if [ $? -eq 0 ]; then echo "$1 up"; fi
}
check 192.168.56.10สคริปต์ที่เงียบและปลอดภัย
สคริปต์ระดับใช้งานจริงจะเปลี่ยนเส้นทางข้อความรบกวนและหยุดทำงานอย่างรวดเร็ว:
2>/dev/nullซ่อนข้อผิดพลาดset -eออกจากสคริปต์เมื่อคำสั่งแรกล้มเหลวset -uแจ้งข้อผิดพลาดเมื่อใช้ตัวแปรที่ไม่ได้กำหนด
#!/bin/bash
set -euo pipefailตรวจสอบอย่างรวดเร็ว
ทบทวนวิธีที่สคริปต์เก็บเอาต์พุตของคำสั่ง
ทบทวน
คุณได้เรียนรู้พื้นฐานการเขียนสคริปต์ Bash:
- Shebang +
chmod +xเพื่อทำให้สคริปต์เรียกใช้ได้ - ตัวแปร อาร์กิวเมนต์ (
$1) และการแทนที่คำสั่งด้วย$( ) - if, for และ while สำหรับควบคุมลำดับการทำงาน
- รหัสการออก (
$?) และset -euo pipefailสำหรับสคริปต์ที่ทำงานได้อย่างทนทาน
ถัดไป: การทำให้การสำรวจเป็นอัตโนมัติ
เรียนรู้ Ethical Hacking Academy ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 31
- บทเรียน
- 111
คำถามที่พบบ่อย
บทเรียน “พื้นฐานสคริปต์” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “พื้นฐานสคริปต์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ethical Hacking Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ethical Hacking Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “พื้นฐานสคริปต์”
ตัวแปรและลูป คุณปฏิบัติ Ethical Hacking Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ethical Hacking Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ethical Hacking Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “พื้นฐานสคริปต์” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Ethical Hacking Academy นี้ได้ไหม
ได้ บทเรียน Ethical Hacking Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ