ผลต่างระหว่างรุ่นของ "01204223/warm-up68 unix vi"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
(สร้างหน้าด้วย "ตรวจสอบอีเมลที่ @ku.th จะได้รับ username และ password สำหรับเข้าไปที่...")
 
 
(ไม่แสดง 5 รุ่นระหว่างกลางโดยผู้ใช้คนเดียวกัน)
แถว 3: แถว 3:
 
== การเข้าใช้เครื่อง ==
 
== การเข้าใช้เครื่อง ==
  
 +
ถ้าใช้ mac, ubuntu หรือ wsl บน windows สามารถใช้คำสั่ง ssh ไปที่เครื่องได้เลย โดยสั่ง
 +
 +
ssh [username]@p1.secondtrain.org
 +
 +
เปลี่ยน [username] เป็น username ของคุณ
 +
 +
ถ้าใช้ windows ต้องไปหาโปรแกรม
 +
 +
ทางเลือกคือ
 +
* โปรแกรมคลาสสิกมีอายุนับหลายสิบปี [https://www.chiark.greenend.org.uk/~sgtatham/putty/ PuTTY]
 +
* terminus [https://termius.com/index.html terminus] มีนิสิตแนะนำมาว่าดี
 +
 +
ถ้ามีตัวอื่นแนะนำ ทักมาแจ้งทาง discord ได้ครับ
  
 
== ดูคลิปพื้นฐาน unix และระบบไดเร็กทอรี ==
 
== ดูคลิปพื้นฐาน unix และระบบไดเร็กทอรี ==
 +
* แนะนำ path ใน unix
 +
** [http://www.youtube.com/watch?v=UI5LdVp9XtY ตอนที่ 1] เกริ่นนำเกี่ยวกับ shell และแนะนำแนวคิดของโครงสร้างไดเร็กทอรี
 +
** [http://www.youtube.com/watch?v=qv4cetEvIgo ตอนที่ 2] อธิบายแนวคิดของ working directory และการอ้างถึงไฟล์โดยอิงกับ working directory, ทดลองใช้คำสั่ง ls, cd, pwd และ cp
 +
** [http://www.youtube.com/watch?v=WeacW6PTKB4 ตอนที่ 3] อธิบายวิธีการอ้างถึงไฟล์ในรูปแบบอื่น ๆ เช่นการอ้างแบบ absolute (/) อ้างผ่าน home (~) และการอ้างถึงตำแหน่งนั้นเอง (.) กับการอ้างถึงไดเร็กทอรีก่อนหน้า (..)
  
 
== กิจกรรม 1: หาของ ย้ายที่ ดูข้อมูล (ls, cd, cat) ==
 
== กิจกรรม 1: หาของ ย้ายที่ ดูข้อมูล (ls, cd, cat) ==
แถว 19: แถว 36:
 
  drwxr-xr-x 3 root  root  4096 Nov 28 01:29 warmup01
 
  drwxr-xr-x 3 root  root  4096 Nov 28 01:29 warmup01
  
สตริงตอนต้นจะระบุข้อมูล permission เกี่ยวกับ warmup01  ตัว d นำหน้าแสดงว่าเป็นไดเร็กทอรี
+
สตริงตอนต้นจะระบุข้อมูล permission เกี่ยวกับ warmup01  ตัว d นำหน้าแสดงว่าเป็นไดเร็กทอรี    ถัด ๆ ไปจะเป็นชื่อกลุ่มของไฟล์ (root) ชื่อเจ้าของไฟล์ (root) ขนาดและเวลาแก้
  
 
เราจะ cd เข้าไป โดยสั่ง
 
เราจะ cd เข้าไป โดยสั่ง
แถว 34: แถว 51:
  
 
ให้กรอกข้อความที่พบลงใน google sheet ของกิจกรรม คอลัมน์ '''ข้อความในไฟล์ warmup01/message''' (สีเหลือง)
 
ให้กรอกข้อความที่พบลงใน google sheet ของกิจกรรม คอลัมน์ '''ข้อความในไฟล์ warmup01/message''' (สีเหลือง)
 +
 +
ถ้าจำได้ ในไดเร็กทอรี warmup01 จะมีอีกไดเร็กทอรีด้วย ให้กรอกชื่อลงในคอลัมน์ '''ชื่อไดเร็กทรอรีใน warmup01''' (สีส้ม)
 +
 +
ให้เปลี่ยนไดเร็กทอรีไปยังไดเร็กทอรีดังกล่าว จะมีไฟล์หนึ่งไฟล์ ให้กรอกชื่อในคอลัมน์ '''ชื่อไฟล์ในไดเร็กทอรีพิเศษ''' (สีเขียว)
 +
 +
ให้ดูข้อความในไฟล์นั้น แล้วกรอกในคอลัมน์ '''ข้อความในไฟล์ดังกล่าว''' (สีฟ้า)
 +
 +
สุดท้าย ไฟล์ดังกล่าว เกิดโดยการที่เพื่อนของคุณสักคนแอบมาสร้างไว้ ลองใช้คำสั่งที่ได้ลองมาหาว่าใคร และกรอกชื่อ username ในคอลัมน์ '''username ของผู้สร้างไฟล์''' (สีม่วง)
 +
 +
เมื่อทำเสร็จแล้ว เปลี่ยนไดเร็กทอรีปัจจุบันกลับไปที่ home โดยสั่ง
 +
 +
cd
 +
 +
(สั่ง cd เปล่าๆ)  ลองสั่ง pwd ดูอีกที จะเห็นว่าบ้านเราอยู่ที่ไหน
 +
 +
== กิจกรรม 2 เล่น editor vi และออกมาจากมันให้ได้ ==
 +
 +
ย้ายกลับไปใน warmup01
 +
 +
cd warmup01
 +
 +
เราจะใช้ vi สร้างไฟล์ชื่อ info.txt ที่มีข้อมูลในลักษณะดังนี้
 +
 +
[student-id]
 +
 +
[firstname lastname in english]
 +
 +
ต้องมีบรรทัดว่างระหว่างรหัสนิสิตและชื่อด้วย เช่น
 +
 +
6700012345
 +
 +
Harry Potter
 +
 +
ให้สร้างไฟล์ดังกล่าว ด้วย editor vi  ให้ลองสั่ง
 +
 +
vi info.txt
 +
 +
ในการใช้งานสามารถดูคลิปของ อ.ชัยพรได้ที่
 +
 +
* [http://www.youtube.com/watch?v=FLWeA0zBtok Vi เบื้องต้น: การเคลื่อนเคอร์เซอร์]
 +
* [http://www.youtube.com/watch?v=zQSsFRngrf4 แนะนำเอดิเตอร์ VIM (รวมท่าพิเศษ)]
 +
 +
คำสั่งกันตาย
 +
* ถ้าติดใน vi อย่าลืมลองเปลี่ยนโหมดออกจาก insert mode โดยกด ESC 
 +
* ถ้าต้องการออกจาก vi โดยที่ยังไม่แก้อะไร ให้กด :q ใน command mode
 +
* ถ้าต้องการออกจาก vi โดยไม่ save ให้กด :q! ใน command mode  (ตกใจคือ บอกว่าจะออกแน่ ๆ)
 +
* ถ้าต้องการ save กด :w
 +
* ถ้าต้องการออกและ save ด้วย กด :wq

รุ่นแก้ไขปัจจุบันเมื่อ 02:18, 28 พฤศจิกายน 2568

ตรวจสอบอีเมลที่ @ku.th จะได้รับ username และ password สำหรับเข้าไปที่เซิร์ฟเวอร์สำหรับหัดใช้ unix

การเข้าใช้เครื่อง

ถ้าใช้ mac, ubuntu หรือ wsl บน windows สามารถใช้คำสั่ง ssh ไปที่เครื่องได้เลย โดยสั่ง

ssh [username]@p1.secondtrain.org

เปลี่ยน [username] เป็น username ของคุณ

ถ้าใช้ windows ต้องไปหาโปรแกรม

ทางเลือกคือ

  • โปรแกรมคลาสสิกมีอายุนับหลายสิบปี PuTTY
  • terminus terminus มีนิสิตแนะนำมาว่าดี

ถ้ามีตัวอื่นแนะนำ ทักมาแจ้งทาง discord ได้ครับ

ดูคลิปพื้นฐาน unix และระบบไดเร็กทอรี

  • แนะนำ path ใน unix
    • ตอนที่ 1 เกริ่นนำเกี่ยวกับ shell และแนะนำแนวคิดของโครงสร้างไดเร็กทอรี
    • ตอนที่ 2 อธิบายแนวคิดของ working directory และการอ้างถึงไฟล์โดยอิงกับ working directory, ทดลองใช้คำสั่ง ls, cd, pwd และ cp
    • ตอนที่ 3 อธิบายวิธีการอ้างถึงไฟล์ในรูปแบบอื่น ๆ เช่นการอ้างแบบ absolute (/) อ้างผ่าน home (~) และการอ้างถึงตำแหน่งนั้นเอง (.) กับการอ้างถึงไดเร็กทอรีก่อนหน้า (..)

กิจกรรม 1: หาของ ย้ายที่ ดูข้อมูล (ls, cd, cat)

เข้าไปที่ p1.secondtrain.org จากนั้นสั่ง

ls

จะเห็นว่ามีของ (ซึ่งเป็นไดเร็กทอรี) ชื่อ warmup01 อยู่ ลองสั่งดูแบบละเอียด

ls -l

จะเห็นผลลัพธ์ประมาณ

drwxr-xr-x 3 root   root   4096 Nov 28 01:29 warmup01

สตริงตอนต้นจะระบุข้อมูล permission เกี่ยวกับ warmup01 ตัว d นำหน้าแสดงว่าเป็นไดเร็กทอรี    ถัด ๆ ไปจะเป็นชื่อกลุ่มของไฟล์ (root) ชื่อเจ้าของไฟล์ (root) ขนาดและเวลาแก้

เราจะ cd เข้าไป โดยสั่ง

cd warmup01

ลอง ls และ ls -l ดูว่าเห็นอะไรบ้าง

ใน unix ถ้าอยากรู้ว่าไดเร็กทอรีปัจจุบันคืออะไร ลองสั่ง pwd

ใน warmup01 จะมีไฟล์ชื่อ message ถ้าเราต้องการดูข้อมูลภายใน วิธีง่ายสุดคือสั่ง cat

cat message

ให้กรอกข้อความที่พบลงใน google sheet ของกิจกรรม คอลัมน์ ข้อความในไฟล์ warmup01/message (สีเหลือง)

ถ้าจำได้ ในไดเร็กทอรี warmup01 จะมีอีกไดเร็กทอรีด้วย ให้กรอกชื่อลงในคอลัมน์ ชื่อไดเร็กทรอรีใน warmup01 (สีส้ม)

ให้เปลี่ยนไดเร็กทอรีไปยังไดเร็กทอรีดังกล่าว จะมีไฟล์หนึ่งไฟล์ ให้กรอกชื่อในคอลัมน์ ชื่อไฟล์ในไดเร็กทอรีพิเศษ (สีเขียว)

ให้ดูข้อความในไฟล์นั้น แล้วกรอกในคอลัมน์ ข้อความในไฟล์ดังกล่าว (สีฟ้า)

สุดท้าย ไฟล์ดังกล่าว เกิดโดยการที่เพื่อนของคุณสักคนแอบมาสร้างไว้ ลองใช้คำสั่งที่ได้ลองมาหาว่าใคร และกรอกชื่อ username ในคอลัมน์ username ของผู้สร้างไฟล์ (สีม่วง)

เมื่อทำเสร็จแล้ว เปลี่ยนไดเร็กทอรีปัจจุบันกลับไปที่ home โดยสั่ง

cd

(สั่ง cd เปล่าๆ) ลองสั่ง pwd ดูอีกที จะเห็นว่าบ้านเราอยู่ที่ไหน

กิจกรรม 2 เล่น editor vi และออกมาจากมันให้ได้

ย้ายกลับไปใน warmup01

cd warmup01

เราจะใช้ vi สร้างไฟล์ชื่อ info.txt ที่มีข้อมูลในลักษณะดังนี้

[student-id]

[firstname lastname in english]

ต้องมีบรรทัดว่างระหว่างรหัสนิสิตและชื่อด้วย เช่น

6700012345

Harry Potter

ให้สร้างไฟล์ดังกล่าว ด้วย editor vi ให้ลองสั่ง

vi info.txt

ในการใช้งานสามารถดูคลิปของ อ.ชัยพรได้ที่

คำสั่งกันตาย

  • ถ้าติดใน vi อย่าลืมลองเปลี่ยนโหมดออกจาก insert mode โดยกด ESC
  • ถ้าต้องการออกจาก vi โดยที่ยังไม่แก้อะไร ให้กด :q ใน command mode
  • ถ้าต้องการออกจาก vi โดยไม่ save ให้กด :q! ใน command mode (ตกใจคือ บอกว่าจะออกแน่ ๆ)
  • ถ้าต้องการ save กด :w
  • ถ้าต้องการออกและ save ด้วย กด :wq