คำสั่ง Linux ใน DevOps: สิ่งที่ต้องรู้สำหรับ DevOps Professional ทุกคน



บล็อกนี้ครอบคลุมคำสั่ง Linux ที่ใช้บ่อยที่สุดใน DevOps นอกจากนี้ยังครอบคลุมพื้นฐานของเชลล์สคริปต์และคำสั่ง Git บางคำสั่ง

พื้นฐานของ Linux และการเขียนสคริปต์เป็นหนึ่งในทักษะที่สำคัญที่สุดของ DevOps Professionalบริษัท ส่วนใหญ่มีสภาพแวดล้อมบน Linux รวมถึงเครื่องมือ CM มากมายเช่น - Puppet, Chef และ Ansible มีโหนดหลักบน Linuxดังนั้นในบล็อกนี้ฉันจะครอบคลุมส่วนบรรทัดคำสั่งทั้งหมดซึ่งเป็นส่วนสำคัญของ . หัวข้อที่เราจะกล่าวถึงมีดังต่อไปนี้ -

    1. ลินุกซ์คืออะไร?
    2. ทำไม Linux ถึงได้รับความนิยม?
    3. คำสั่ง Linux ใน DevOps
    4. เชลล์สคริปต์
    5. คำสั่ง Git

มาเริ่มกันเลย





ลินุกซ์คืออะไร?

ลินุกซ์ เป็นระบบปฏิบัติการโอเพ่นซอร์สและชุมชนที่พัฒนาขึ้นสำหรับคอมพิวเตอร์เซิร์ฟเวอร์เมนเฟรมอุปกรณ์เคลื่อนที่และอุปกรณ์ฝังตัว มีการสนับสนุนบนแพลตฟอร์มคอมพิวเตอร์ที่สำคัญเกือบทุกแพลตฟอร์มรวมถึง x86, ARM และอื่น ๆ ทำให้เป็นระบบปฏิบัติการที่ได้รับการสนับสนุนอย่างกว้างขวางที่สุดระบบหนึ่ง

การออกแบบของ Linux นั้นคล้ายกับ UNIX แต่มีการพัฒนาเพื่อให้ทำงานบนฮาร์ดแวร์ที่หลากหลายตั้งแต่โทรศัพท์ไปจนถึงซูเปอร์คอมพิวเตอร์ ระบบปฏิบัติการที่ใช้ Linux ทุกตัวมีเคอร์เนล Linux ซึ่งจัดการทรัพยากรฮาร์ดแวร์ - และชุดซอฟต์แวร์สำเร็จรูปที่ประกอบขึ้นเป็นส่วนที่เหลือของระบบปฏิบัติการ



ทำไม Linux ถึงเป็นที่นิยม?

Linux แตกต่างจากระบบปฏิบัติการอื่น ๆ ในแง่มุมที่สำคัญหลายประการ บางส่วนของพวกเขามีดังนี้

หนึ่ง. ฟรี -ประการแรกและที่สำคัญที่สุดคือ Linux เป็นบริการฟรี คุณไม่ต้องเสียค่าใช้จ่ายใด ๆ ในการดาวน์โหลดและใช้งานซึ่งแตกต่างจาก windows

2. โอเพ่นซอร์ส -Linux เป็นซอฟต์แวร์โอเพ่นซอร์ส โค้ดที่ใช้ในการสร้าง Linux นั้นไม่เสียค่าใช้จ่ายและเปิดให้บุคคลทั่วไปดูแก้ไขและ - สำหรับผู้ใช้ที่มีทักษะที่เหมาะสม - เพื่อร่วมให้ข้อมูล



3. ปลอดภัย - เมื่อคุณติดตั้ง Linux บนระบบของคุณแล้วก็ไม่จำเป็นต้องใช้โปรแกรมป้องกันไวรัส! Linux เป็นระบบที่มีความปลอดภัยสูง ยิ่งไปกว่านั้นมีชุมชนการพัฒนาทั่วโลกที่มองหาวิธีเพิ่มความปลอดภัยอยู่ตลอดเวลา การอัพเกรดแต่ละครั้งทำให้ระบบปฏิบัติการปลอดภัยและแข็งแกร่งยิ่งขึ้น

สี่. ความเสถียรและประสิทธิภาพ - ลินุกซ์ให้ความเสถียรสูงมากเช่นไม่จำเป็นต้องรีบูตหลังจากช่วงเวลาสั้น ๆ ระบบ Linux ของคุณไม่ค่อยช้าลงหรือค้างคุณสามารถทำงานได้โดยไม่มีสิ่งรบกวนระบบ Linux ของคุณ Linux ให้อย่างน่าทึ่งประสิทธิภาพสูงบนเครือข่ายและเวิร์กสเตชันต่างๆ

คำสั่ง Linux ใน DevOps

ในส่วนนี้เราจะมาดูการใช้งานบ่อยที่สุด ที่ใช้ขณะทำงานใน DevOps

ls

คำสั่งนี้แสดงรายการเนื้อหาทั้งหมดในไดเร็กทอรีการทำงานปัจจุบัน

ไวยากรณ์:

$ ls

คำสั่งคำอธิบาย

ls

โดยการระบุพา ธ หลัง ls เนื้อหาในพา ธ นั้นจะแสดง

ls –l

ใช้การตั้งค่าสถานะ 'l' แสดงเนื้อหาทั้งหมดพร้อมกับการตั้งค่าเจ้าของสิทธิ์และเวลา

แสตมป์ (รูปแบบยาว)

ls –a

ใช้แฟล็ก 'a' แสดงรายการเนื้อหาที่ซ่อนอยู่ทั้งหมดในไดเร็กทอรีที่ระบุ

sudo

คำสั่งนี้เรียกใช้เฉพาะคำสั่งนั้นด้วยสิทธิ์ root / superuser

ไวยากรณ์:

$ sudo

คำสั่ง คำอธิบาย

sudo useradd

การเพิ่มผู้ใช้ใหม่

sudo passwd

การตั้งรหัสผ่านสำหรับผู้ใช้ใหม่

sudo userdel

การลบผู้ใช้

sudo groupadd

การเพิ่มกลุ่มใหม่

sudo groupdel

การลบกลุ่ม

sudo usermod -g

การเพิ่มผู้ใช้ในกลุ่มหลัก

แมว

คำสั่งนี้สามารถอ่านแก้ไขหรือต่อไฟล์ข้อความ นอกจากนี้ยังแสดงเนื้อหาของไฟล์

ไวยากรณ์:

$ cat {filename}

คำสั่ง

คำอธิบาย

แมว -b

เพิ่มหมายเลขบรรทัดให้กับบรรทัดที่ไม่ว่าง

แมว - น

นี่เป็นการเพิ่มหมายเลขบรรทัดให้กับทุกบรรทัด

แมว -s

นี่เป็นการบีบเส้นว่างให้เป็นเส้นเดียว

แมว –E

นี่แสดง $ ที่ท้ายบรรทัด

จับ

คำสั่งนี้ค้นหาสตริง / คำเฉพาะในไฟล์ข้อความ ซึ่งคล้ายกับ“ Ctrl + F” แต่ดำเนินการผ่าน CLI

ไวยากรณ์:

$ grep {filename}

คำสั่งคำอธิบาย

grep -i

ส่งคืนผลลัพธ์สำหรับสตริงที่ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่

grep -n

ส่งคืนสตริงที่ตรงกันพร้อมกับหมายเลขบรรทัด

grep -v

ส่งคืนผลลัพธ์ของบรรทัดที่ไม่ตรงกับสตริงการค้นหา

grep -c

ส่งคืนจำนวนบรรทัดที่ผลลัพธ์ตรงกับสตริงการค้นหา

เรียงลำดับ

คำสั่งนี้จะจัดเรียงผลลัพธ์ของการค้นหาตามตัวอักษรหรือตัวเลข นอกจากนี้ยังจัดเรียงไฟล์เนื้อหาไฟล์และไดเรกทอรี

ไวยากรณ์:

$ sort {filename}

คำสั่ง

คำอธิบาย

เรียงลำดับ -r

แฟล็กจะส่งคืนผลลัพธ์ในลำดับย้อนกลับ

เรียงลำดับ -f

แฟล็กทำการเรียงลำดับแบบไม่คำนึงถึงขนาดตัวพิมพ์

เรียงลำดับ -n

แฟล็กจะส่งคืนผลลัพธ์ตามลำดับตัวเลข

หาง

เป็นส่วนเสริมของคำสั่งหัวหน้า คำสั่ง tail ตามความหมายของชื่อให้พิมพ์ข้อมูล N หมายเลขสุดท้ายของอินพุตที่กำหนด โดยค่าเริ่มต้นจะพิมพ์ 10 บรรทัดสุดท้ายของไฟล์ที่ระบุ หากคุณให้ชื่อไฟล์มากกว่าหนึ่งชื่อข้อมูลจากแต่ละไฟล์จะนำหน้าด้วยชื่อไฟล์

ไวยากรณ์:

หาง [OPTION] ... [FILE] ...

tail -n 3 state.txt หรือ tail -3 state.txt => -n สำหรับ no จำนวนบรรทัด

หาง +25 state.txt

-c ว่า: พิมพ์ไบต์ 'num' สุดท้ายจากไฟล์ที่ระบุ

Chown

ผู้ใช้ที่แตกต่างกันในระบบปฏิบัติการมีความเป็นเจ้าของและสิทธิ์เพื่อให้แน่ใจว่าไฟล์มีความปลอดภัยและมีข้อ จำกัด ว่าใครสามารถแก้ไขเนื้อหาของไฟล์ได้ ใน Linux มีผู้ใช้ต่างกันที่ใช้ระบบ:

  • แต่ละ ผู้ใช้ มีคุณสมบัติบางอย่างที่เกี่ยวข้องเช่น ID ผู้ใช้และโฮมไดเร็กทอรี เราสามารถเพิ่มผู้ใช้ลงในกลุ่มเพื่อให้กระบวนการจัดการผู้ใช้ง่ายขึ้น
  • ถึง กลุ่ม สามารถมีผู้ใช้ตั้งแต่ 0 คนขึ้นไป ผู้ใช้ที่ระบุเชื่อมโยงกับ“ กลุ่มเริ่มต้น” นอกจากนี้ยังสามารถเป็นสมาชิกของกลุ่มอื่น ๆ ในระบบได้เช่นกัน

ความเป็นเจ้าของและสิทธิ์: ในการปกป้องและรักษาความปลอดภัยไฟล์และไดเร็กทอรีใน Linux เราใช้สิทธิ์เพื่อควบคุมสิ่งที่ผู้ใช้สามารถทำกับไฟล์หรือไดเร็กทอรี Linux ใช้สิทธิ์สามประเภท:

  • อ่าน: การอนุญาตนี้อนุญาตให้ผู้ใช้อ่านไฟล์และในไดเร็กทอรีซึ่งอนุญาตให้ผู้ใช้อ่านไดเร็กทอรีและไดเร็กทอรีย่อยที่เก็บไว้ในนั้น
  • เขียน: สิทธิ์นี้อนุญาตให้ผู้ใช้แก้ไขและลบไฟล์ นอกจากนี้ยังอนุญาตให้ผู้ใช้แก้ไขเนื้อหา (สร้างลบและเปลี่ยนชื่อไฟล์ในนั้น) สำหรับไดเร็กทอรี การเปลี่ยนแปลงจะไม่ส่งผลกระทบต่อไดเร็กทอรี
  • ดำเนินการ: สิทธิ์การเขียนบนไฟล์เรียกใช้ไฟล์ ตัวอย่างเช่นหากเรามีไฟล์ชื่อ ดังนั้นหากเราไม่ให้สิทธิ์ดำเนินการมันจะไม่ทำงาน

ประเภทของการอนุญาตไฟล์:

  • ผู้ใช้: การอนุญาตไฟล์ประเภทนี้มีผลต่อเจ้าของไฟล์
  • กลุ่ม: การอนุญาตไฟล์ประเภทนี้มีผลต่อกลุ่มที่เป็นเจ้าของไฟล์ แทนที่จะใช้สิทธิ์กลุ่มสิทธิ์ของผู้ใช้จะใช้ถ้าผู้ใช้ที่เป็นเจ้าของอยู่ในกลุ่มนี้
  • อื่น ๆ : สิ่งนี้ ประเภทของการอนุญาตไฟล์มีผลต่อผู้ใช้อื่น ๆ ทั้งหมดในระบบ

บันทึก: ในการดูสิทธิ์ที่เราใช้:

ls -l

Chown คำสั่งใช้เพื่อเปลี่ยนเจ้าของไฟล์หรือกลุ่ม เมื่อใดก็ตามที่คุณต้องการเปลี่ยนความเป็นเจ้าของคุณสามารถใช้คำสั่ง chown

ไวยากรณ์:

chown [OPTION] & hellip [OWNER] [: [GROUP]] FILE & hellip

chown [OPTION] & hellip –reference = RFILE FILE & hellip

ตัวอย่าง: ในการเปลี่ยนเจ้าของไฟล์:

chown owner_name file_name

chown master file1.txt

ที่ไหน ปรมาจารย์ เป็นผู้ใช้รายอื่นในระบบ สมมติว่าถ้าคุณเป็นผู้ใช้ชื่อ user1 และคุณต้องการเปลี่ยนความเป็นเจ้าของเป็น root (โดยที่ไดเร็กทอรีปัจจุบันของคุณคือ user1) ใช้“ sudo” ก่อนไวยากรณ์

sudo chown root file1.txt

chmod

คำสั่งนี้ใช้เพื่อเปลี่ยนสิทธิ์การเข้าถึงไฟล์และไดเร็กทอรี

ไวยากรณ์:

chmod {filename}

4 - อ่าน การอนุญาต

2 - เขียน การอนุญาต

หนึ่ง - ดำเนินการการอนุญาต

0 - ไม่การอนุญาต

lsof

ในขณะที่ทำงานในระบบ Linux / Unix อาจมีไฟล์และโฟลเดอร์หลายตัวที่กำลังใช้งานอยู่บางไฟล์จะมองเห็นได้และบางส่วนก็ไม่ปรากฏ lsof คำสั่งย่อมาจาก รายการเปิดไฟล์ . คำสั่งนี้จัดเตรียมรายการไฟล์ที่เปิด โดยทั่วไปจะให้ข้อมูลเพื่อค้นหาไฟล์ที่เปิดโดยกระบวนการใด เพียงครั้งเดียวมันจะแสดงรายการไฟล์ที่เปิดอยู่ทั้งหมดในคอนโซลผลลัพธ์

ไวยากรณ์:

$ lsof [ตัวเลือก] [ชื่อผู้ใช้]

ตัวเลือกพร้อมตัวอย่าง:

  • แสดงรายการไฟล์ที่เปิดทั้งหมด: คำสั่งนี้แสดงรายการไฟล์ทั้งหมดที่เปิดโดยกระบวนการใด ๆ ในระบบ

~ $ lsof

  • ที่นี่คุณสังเกตว่ามีรายละเอียดของไฟล์ที่เปิดอยู่ ProcessId ผู้ใช้ที่เกี่ยวข้องกับกระบวนการ FD (file descriptor) ขนาดของไฟล์ทั้งหมดเข้าด้วยกันให้ข้อมูลโดยละเอียดเกี่ยวกับไฟล์ที่เปิดโดยคำสั่ง ID กระบวนการผู้ใช้ขนาดของไฟล์ ฯลฯ

  • FD แสดงเป็น File descriptor
  • cwd : ไดเร็กทอรีการทำงานปัจจุบัน
  • txt: ไฟล์ข้อความ
  • : ไฟล์หน่วยความจำ
  • mmap : อุปกรณ์ที่แมปหน่วยความจำ

แสดงรายการไฟล์ทั้งหมดที่เปิดโดยผู้ใช้: มีผู้ใช้ระบบหลายคนและผู้ใช้แต่ละคนมีความต้องการที่แตกต่างกันดังนั้นพวกเขาจึงใช้ไฟล์และอุปกรณ์ หากต้องการค้นหารายการไฟล์ที่เปิดโดยผู้ใช้เฉพาะคำสั่งนี้มีประโยชน์

  • ไวยากรณ์:

  • ชื่อผู้ใช้ lsof -u

นอกจากนี้เรายังสามารถดูประเภทของไฟล์ได้ที่นี่และมีดังนี้:

  • ถึงคุณ: ไดเรกทอรี
  • REG: ไฟล์ปกติ
  • CHR: ไฟล์พิเศษของอักขระ

ifconfig

ifconfig คำสั่ง (คอนฟิกูเรชันอินเทอร์เฟซ) ใช้เพื่อกำหนดค่าอินเตอร์เฟสเครือข่ายเคอร์เนล ใช้ในเวลาบูตเพื่อตั้งค่าอินเทอร์เฟซตามความจำเป็น หลังจากนั้นโดยปกติจะใช้เมื่อจำเป็นในระหว่างการดีบักหรือเมื่อคุณต้องการปรับแต่งระบบ นอกจากนี้คำสั่งนี้ยังใช้เพื่อกำหนดที่อยู่ IP และ netmask ให้กับอินเทอร์เฟซหรือเพื่อเปิดหรือปิดใช้งานอินเทอร์เฟซที่กำหนด

ไวยากรณ์:

ifconfig [... OPTIONS] [INTERFACE]

ตัวเลือก:

  • -ถึง : ตัวเลือกนี้ใช้เพื่อแสดงอินเทอร์เฟซทั้งหมดที่มีแม้ว่าจะหยุดทำงานก็ตาม

ไวยากรณ์:

ifconfig -a

- ส: แสดงรายการสั้น ๆ แทนรายละเอียด

ไวยากรณ์:

ifconfig -s

id

คำสั่ง id ใน Linux ใช้เพื่อค้นหาชื่อผู้ใช้และกลุ่มและ ID ตัวเลข (UID หรือ ID กลุ่ม) ของผู้ใช้ปัจจุบันหรือผู้ใช้รายอื่นในเซิร์ฟเวอร์ คำสั่งนี้มีประโยชน์ในการค้นหาข้อมูลต่อไปนี้ตามรายการด้านล่าง:

  • ชื่อผู้ใช้และรหัสผู้ใช้จริง
  • ค้นหา UID ผู้ใช้เฉพาะ
  • แสดง UID และกลุ่มทั้งหมดที่เกี่ยวข้องกับผู้ใช้
  • แสดงรายชื่อกลุ่มทั้งหมดที่ผู้ใช้เป็นสมาชิก
  • แสดงบริบทความปลอดภัยของผู้ใช้ปัจจุบัน

ไวยากรณ์:

id [OPTION] และ hellip [USER]

ตัวเลือก:

  • - ก : พิมพ์เฉพาะรหัสกลุ่มที่มีผล
  • - ก : พิมพ์รหัสกลุ่มทั้งหมด
  • - น : พิมพ์ชื่อแทนตัวเลข
  • - ร : พิมพ์ ID จริงแทนตัวเลข
  • -ยู : พิมพ์เฉพาะ ID ผู้ใช้ที่ใช้งานจริง
  • -ช่วยด้วย : แสดงข้อความช่วยเหลือและออก
  • - รุ่น : แสดงข้อมูลเวอร์ชันและออก

บันทึก: หากไม่มีตัวเลือกใด ๆ ระบบจะพิมพ์ข้อมูลที่ระบุทุกชุดเช่นรหัสตัวเลข

ตัวอย่าง:

  • ในการพิมพ์ ID ของคุณเองโดยไม่มีตัวเลือกใด ๆ :

id

เอาต์พุตแสดง ID ของ UID และ GID ของผู้ใช้ปัจจุบัน

  • ค้นหา ID ผู้ใช้เฉพาะ: ตอนนี้สมมติว่าเรามีผู้ใช้ชื่อ master ในการค้นหา UID ของเขาเราจะใช้คำสั่ง:

id -u หลัก

  • รับ GID ผู้ใช้เฉพาะ: อีกครั้งสมมติว่าค้นหา GID ของต้นแบบเราจะใช้คำสั่ง:

id -g master

  • รู้จัก UID และกลุ่มทั้งหมดที่เกี่ยวข้องกับชื่อผู้ใช้: ในกรณีนี้เราจะใช้ผู้ใช้“ master” เพื่อค้นหา UID และกลุ่มทั้งหมดที่เกี่ยวข้องโดยใช้คำสั่ง:

id master

  • หากต้องการค้นหากลุ่มทั้งหมดที่ผู้ใช้เป็นสมาชิก: การแสดง UID และกลุ่มทั้งหมดที่ผู้ใช้“ master” เป็นสมาชิก:

id -G หลัก

ตัด

คำสั่ง Cut ใช้สำหรับการแยกส่วนของไฟล์โดยใช้คอลัมน์และตัวคั่น หากคุณต้องการแสดงรายการทุกอย่างในคอลัมน์ที่เลือกให้ใช้แฟล็ก“ -c” พร้อมคำสั่ง cut ตัวอย่างเช่นให้เลือกสองคอลัมน์แรกจากไฟล์ demo1.txt ของเรา

ตัด -c1-2สาธิต 1.txt

และ

Sed เป็นโปรแกรมแก้ไขข้อความที่สามารถดำเนินการแก้ไขในลักษณะที่ไม่โต้ตอบ คำสั่ง sed รับอินพุตจากอินพุตมาตรฐานหรือไฟล์เพื่อดำเนินการแก้ไขบนไฟล์ Sed เป็นยูทิลิตี้ที่ทรงพลังมากและคุณสามารถปรับแต่งไฟล์ได้มากมายโดยใช้ sed ฉันจะอธิบายการดำเนินการที่สำคัญที่คุณอาจต้องการทำกับไฟล์ข้อความ

หากคุณต้องการแทนที่ข้อความในไฟล์โดยการค้นหาในไฟล์คุณสามารถใช้คำสั่ง sed ด้วยแฟล็ก 's' แทนเพื่อค้นหารูปแบบเฉพาะและเปลี่ยนแปลงได้

ตัวอย่างเช่นให้แทนที่“ mikesh” ในไฟล์ test.txt เป็น“ Mukesh”

และ 's / mikesh / mukesh /' ทดสอบ.txt

hashmap ใน java คืออะไร

ความแตกต่าง

คำสั่ง diff ใช้เพื่อค้นหาความแตกต่างระหว่างสองไฟล์ คำสั่งนี้จะวิเคราะห์ไฟล์และพิมพ์เส้นที่ไม่เหมือนกัน สมมติว่าเรามีสองไฟล์ทดสอบและทดสอบ 1 คุณสามารถค้นหาความแตกต่างระหว่างสองไฟล์โดยใช้คำสั่งต่อไปนี้

ไวยากรณ์ -

ความแตกต่าง ทดสอบ.txt ทดสอบ 1.txt

ประวัติศาสตร์

คำสั่ง history ใช้เพื่อดูคำสั่งที่ดำเนินการก่อนหน้านี้ คุณลักษณะนี้ไม่มีใน Bourne shell Bash และ Korn สนับสนุนคุณลักษณะนี้ซึ่งทุกคำสั่งที่เรียกใช้จะถือว่าเป็นเหตุการณ์และเชื่อมโยงกับหมายเลขเหตุการณ์ที่ใช้ซึ่งสามารถเรียกคืนและเปลี่ยนแปลงได้หากจำเป็น คำสั่งเหล่านี้ถูกบันทึกไว้ในไฟล์ประวัติ ใน Bash shell ประวัติศาสตร์ คำสั่งแสดงรายการคำสั่งทั้งหมด

ไวยากรณ์:

ประวัติ $

เพื่อแสดงจำนวนคำสั่งที่ จำกัด ซึ่งดำเนินการก่อนหน้านี้ดังนี้:

ประวัติ $ 10

dd

dd เป็นยูทิลิตี้บรรทัดคำสั่งสำหรับระบบปฏิบัติการแบบ Unix และ Unix ซึ่งมีจุดประสงค์หลักในการแปลงและคัดลอกไฟล์

  • ใน Unix ไดรเวอร์อุปกรณ์สำหรับฮาร์ดแวร์ (เช่นฮาร์ดดิสก์ไดรฟ์) และไฟล์อุปกรณ์พิเศษ (เช่น / dev / zero และ / dev / random) จะปรากฏในระบบไฟล์เช่นเดียวกับไฟล์ปกติ
  • dd ยังสามารถอ่านและ / หรือเขียนจาก / ไปยังไฟล์เหล่านี้ได้หากมีการใช้งานฟังก์ชันในไดรเวอร์ที่เกี่ยวข้อง
  • ด้วยเหตุนี้ dd สามารถใช้สำหรับงานต่างๆเช่นการสำรองข้อมูลบูตเซกเตอร์ของฮาร์ดไดรฟ์และการรับข้อมูลสุ่มจำนวนคงที่
  • โปรแกรม dd ยังสามารถทำการแปลงข้อมูลตามที่คัดลอกรวมถึงการสลับลำดับไบต์และการแปลงไปและกลับจากการเข้ารหัสข้อความ ASCII และ EBCDIC

การใช้งาน: ไวยากรณ์บรรทัดคำสั่งของ dd แตกต่างจากโปรแกรม Unix อื่น ๆ โดยใช้ไวยากรณ์ option = value สำหรับตัวเลือกบรรทัดคำสั่งแทนที่จะเป็นมาตรฐานมากกว่า - ค่าตัวเลือก หรือ –option = ค่า รูปแบบ ตามค่าเริ่มต้น dd อ่านจาก stdin และเขียนไปยัง stdout แต่สิ่งเหล่านี้สามารถเปลี่ยนแปลงได้โดยใช้ตัวเลือก if (ไฟล์อินพุต) และของ (ไฟล์เอาต์พุต)

ตัวอย่างที่ใช้ได้จริงบางส่วนเกี่ยวกับคำสั่ง dd:

  1. ในการสำรองข้อมูลฮาร์ดดิสก์ทั้งหมด: ในการสำรองข้อมูลสำเนาทั้งหมดของฮาร์ดดิสก์ไปยังฮาร์ดดิสก์อื่นที่เชื่อมต่อกับระบบเดียวกันให้ดำเนินการคำสั่ง dd ดังที่แสดง ในตัวอย่างคำสั่ง dd นี้ชื่ออุปกรณ์ UNIX ของฮาร์ดดิสก์ต้นทางคือ / dev / hda และชื่ออุปกรณ์ของฮาร์ดดิสก์เป้าหมายคือ / dev / hdb

  2. # dd if = / dev / sda ของ = / dev / sdb
  • 'ถ้า' แสดงถึงไฟล์อินพุตและ 'ของ' แสดงถึงไฟล์เอาต์พุต ดังนั้นสำเนาที่ถูกต้องของ / dev / sda จะพร้อมใช้งานใน / dev / sdb .
  • หากมีข้อผิดพลาดคำสั่งดังกล่าวจะล้มเหลว หากคุณให้พารามิเตอร์ 'Conv = noerror' จากนั้นจะคัดลอกต่อไปหากมีข้อผิดพลาดในการอ่าน
  • ไฟล์อินพุตและไฟล์เอาต์พุตควรกล่าวถึงอย่างระมัดระวัง ในกรณีที่คุณพูดถึงอุปกรณ์ต้นทางในเป้าหมายและในทางกลับกันคุณอาจสูญเสียข้อมูลทั้งหมดของคุณ

หา

หา คำสั่งใน UNIX เป็นยูทิลิตี้บรรทัดคำสั่งสำหรับการเดินตามลำดับชั้นของไฟล์ สามารถใช้เพื่อค้นหาไฟล์และไดเร็กทอรีและดำเนินการในภายหลังได้ รองรับการค้นหาตามไฟล์โฟลเดอร์ชื่อวันที่สร้างวันที่แก้ไขเจ้าของและสิทธิ์ การใช้คำสั่ง UNIX อื่น ๆ '-exec' สามารถเรียกใช้กับไฟล์หรือโฟลเดอร์ที่พบ

ไวยากรณ์:

$ ค้นหา [จะเริ่มค้นหาจากที่ไหน]

[นิพจน์กำหนดสิ่งที่จะค้นหา] [- ตัวเลือก] [สิ่งที่จะพบ]

ตัวเลือก :

  • -exec CMD: ไฟล์ที่กำลังค้นหาซึ่งตรงตามเกณฑ์ข้างต้นและส่งคืน 0 เป็นสถานะออกเพื่อให้การดำเนินการคำสั่งสำเร็จ
  • -ok CMD: ทำงานเหมือนกับ -exec ยกเว้นผู้ใช้จะได้รับแจ้งก่อน
  • -inum N; ค้นหาไฟล์ที่มีหมายเลข inode 'N'
  • - ลิงก์ N: ค้นหาไฟล์ที่มีลิงก์ 'N'

ฟรี

ใน LINUX มียูทิลิตี้บรรทัดคำสั่งสำหรับสิ่งนี้และนั่นคือ ฟรี คำสั่งที่แสดงจำนวนพื้นที่ว่างทั้งหมดที่มีพร้อมกับจำนวนหน่วยความจำที่ใช้และสลับหน่วยความจำในระบบและบัฟเฟอร์ที่เคอร์เนลใช้

นี่เป็นสิ่งที่คำสั่งฟรีทำเพื่อคุณ
ไวยากรณ์:

ฟรี $ [OPTION]

ตัวเลือก: หมายถึงตัวเลือกที่เข้ากันได้กับคำสั่งฟรี

เนื่องจากฟรีจะแสดงรายละเอียดของหน่วยความจำที่เกี่ยวข้องกับระบบของคุณไวยากรณ์จึงไม่จำเป็นต้องส่งผ่านข้อโต้แย้งใด ๆ แต่มีเพียงตัวเลือกที่คุณสามารถใช้ได้ตามความต้องการของคุณ

ใช้คำสั่งฟรี

คุณสามารถใช้คำสั่งฟรีเป็น: ฟรี $

/ * คำสั่งฟรีโดยไม่มี

ตัวเลือกแสดงการใช้งาน

และพื้นที่ว่างในการแลกเปลี่ยน

และหน่วยความจำกายภาพใน KB * /

เมื่อไม่มีการใช้ตัวเลือกคำสั่ง free จะสร้างเอาต์พุตคอลัมน์ดังที่แสดงไว้ด้านบนโดยที่คอลัมน์:

  1. การแสดงผลทั้งหมด หน่วยความจำที่ติดตั้งทั้งหมด (MemTotal และ SwapTotal คือ มีอยู่ใน / proc / meminfo)
  2. ใช้แสดง หน่วยความจำที่ใช้
  3. แสดงฟรี หน่วยความจำที่ไม่ได้ใช้
  4. จอแสดงผลที่ใช้ร่วมกัน หน่วยความจำที่ใช้โดย tmpfs (Shmen คือ มีอยู่ใน / proc / meminfo และแสดงเป็นศูนย์ในกรณีที่ไม่พร้อมใช้งาน)
  5. แสดงบัฟเฟอร์ หน่วยความจำที่ใช้โดยเคอร์เนลบัฟเฟอร์
  6. แสดงแคช หน่วยความจำที่ใช้โดยแคชของเพจและแผ่นพื้น (แคชและ Slab มีอยู่ใน / proc / meminfo)
  7. แสดงบัฟเฟอร์ / แคช ผลรวมของบัฟเฟอร์และแคช

ตัวเลือกสำหรับคำสั่งฟรี

  • -b, - - ไบต์: จะแสดงหน่วยความจำเป็นไบต์
  • -k, - - คิโล: จะแสดงจำนวนหน่วยความจำเป็นกิโลไบต์ (ค่าเริ่มต้น)
  • -m, - -mega: จะแสดงจำนวนหน่วยความจำเป็นเมกะไบต์
  • -g, - -giga: จะแสดงจำนวนหน่วยความจำเป็นกิกะไบต์

ssh-keygen

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

ตัวอย่างต่อไปนี้สร้างส่วนสาธารณะและส่วนตัวของคีย์ RSA:

ssh-keygen -t rsa

ใช้อ็อพชัน –t เพื่อระบุประเภทของคีย์ที่จะสร้าง ค่าที่เป็นไปได้คือ“ rsa1 ” สำหรับโปรโตคอลเวอร์ชัน 1 และ“ dsa ',' ecdsa ', หรือ ' rsa ” สำหรับโปรโตคอลเวอร์ชัน 2

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

ip

ip คำสั่งใน Linux มีอยู่ใน net-tools ซึ่งใช้สำหรับการดำเนินงานการดูแลระบบเครือข่ายต่างๆคำสั่งนี้ใช้เพื่อแสดงหรือจัดการการกำหนดเส้นทางอุปกรณ์และช่องสัญญาณ คำสั่งนี้ใช้เพื่อทำงานหลายอย่างเช่นการกำหนดแอดเดรสให้กับอินเทอร์เฟซเครือข่ายหรือการกำหนดค่าพารามิเตอร์อินเทอร์เฟซเครือข่าย สามารถทำงานอื่น ๆ ได้หลายอย่างเช่นการกำหนดค่าและแก้ไขการกำหนดเส้นทางเริ่มต้นและแบบคงที่การตั้งค่าทันเนลผ่าน IP การแสดงรายการที่อยู่ IP และข้อมูลคุณสมบัติการแก้ไขสถานะของอินเทอร์เฟซการกำหนดการลบและการตั้งค่าที่อยู่ IP และเส้นทาง

ไวยากรณ์:

ip [OPTIONS] ความช่วยเหลือ OBJECT

ตัวเลือก:

- ที่อยู่: ตัวเลือกนี้ใช้เพื่อแสดงที่อยู่ IP ทั้งหมดที่เชื่อมโยงกับอุปกรณ์เครือข่ายทั้งหมด

ที่อยู่ IP

- ลิงค์: ใช้เพื่อแสดงข้อมูลลิงค์เลเยอร์โดยจะดึงลักษณะของอุปกรณ์ลิงค์เลเยอร์ที่มีอยู่ในปัจจุบัน อุปกรณ์เครือข่ายใด ๆ ที่มีไดรเวอร์โหลดสามารถจัดประเภทเป็นอุปกรณ์ที่ใช้ได้

ลิงค์ ip

nslookup

Nslookup (ย่อมาจาก“ Name Server Lookup”) เป็นคำสั่งที่มีประโยชน์ในการรับข้อมูลจากเซิร์ฟเวอร์ DNS เป็นเครื่องมือการดูแลระบบเครือข่ายสำหรับการสืบค้น Domain Name System (DNS) เพื่อรับชื่อโดเมนหรือการแมปที่อยู่ IP หรือระเบียน DNS เฉพาะอื่น ๆ นอกจากนี้ยังใช้เพื่อแก้ไขปัญหาเกี่ยวกับ DNS

ไวยากรณ์:

nslookup [ตัวเลือก]

ตัวเลือกของ nslookup คำสั่ง:

  • nslookup google.com:

    nslookup ตามด้วยชื่อโดเมนจะแสดง“ A Record” (ที่อยู่ IP) ของโดเมน ใช้คำสั่งนี้เพื่อค้นหาเรกคอร์ดที่อยู่สำหรับโดเมน จะสอบถามไปยังเซิร์ฟเวอร์ชื่อโดเมนและรับรายละเอียด

ขด

ขด เป็นเครื่องมือบรรทัดคำสั่งในการถ่ายโอนข้อมูลไปยังหรือจากเซิร์ฟเวอร์โดยใช้โปรโตคอลที่รองรับ (HTTP, FTP, IMAP, POP3, SCP, SFTP, SMTP, TFTP, TELNET, LDAP หรือ FILE) คำสั่งนี้ขับเคลื่อนโดย Libcurl เครื่องมือนี้เป็นที่ต้องการสำหรับระบบอัตโนมัติเนื่องจากได้รับการออกแบบมาให้ทำงานโดยไม่ต้องโต้ตอบกับผู้ใช้ สามารถถ่ายโอนไฟล์หลายไฟล์พร้อมกัน

ไวยากรณ์:

curl [ตัวเลือก] [URL ... ]

การใช้ curl ขั้นพื้นฐานที่สุดคือการพิมพ์คำสั่งตามด้วย URL

curl https://www.python.org

-o: บันทึกไฟล์ที่ดาวน์โหลดบนเครื่องโลคัลด้วยชื่อที่ระบุไว้ในพารามิเตอร์

ไวยากรณ์:

curl -o [ชื่อไฟล์] [URL ... ]

ตัวอย่าง:

curl -o hello.zip ftp://speedtest.tele2.net/1MB.zip

tr

คำสั่ง tr ใน UNIX เป็นยูทิลิตี้บรรทัดคำสั่งสำหรับแปลหรือลบอักขระ รองรับการเปลี่ยนแปลงที่หลากหลายรวมถึงตัวพิมพ์ใหญ่เป็นตัวพิมพ์เล็กการบีบอักขระที่ซ้ำกันการลบอักขระเฉพาะและการค้นหาและแทนที่พื้นฐาน สามารถใช้กับท่อ UNIX เพื่อรองรับการแปลที่ซับซ้อนมากขึ้น tr ย่อมาจาก translate

ไวยากรณ์:

$ tr [ธง] SET1 [SET2]

ตัวเลือก

-c: เติมเต็มชุดของอักขระในสตริงกล่าวคือการดำเนินการใช้กับอักขระที่ไม่อยู่ในชุดที่กำหนด
-d: ลบอักขระในชุดแรกออกจากเอาต์พุต
-s: แทนที่อักขระที่ซ้ำกันใน set1 ด้วยเหตุการณ์เดียว
-t: ตัดทอน set1

ตัวอย่างคำสั่ง

  1. วิธีแปลงตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่
    ในการแปลงจากตัวพิมพ์เล็กไปเป็นตัวพิมพ์ใหญ่สามารถใช้ชุดที่กำหนดไว้ล่วงหน้าใน tr ได้

iptables

iptables เป็นอินเทอร์เฟซบรรทัดคำสั่งที่ใช้ในการตั้งค่าและดูแลตารางสำหรับไฟร์วอลล์ Netfilter สำหรับ IPv4 ซึ่งรวมอยู่ในเคอร์เนล Linux ไฟร์วอลล์จับคู่แพ็กเก็ตกับกฎที่กำหนดไว้ในตารางเหล่านี้จากนั้นดำเนินการตามที่ระบุกับการจับคู่ที่เป็นไปได้

  • ตารางคือ ชื่อชุดโซ่
  • โซ่คือ ชุดของกฎ
  • กฎ เป็นเงื่อนไขที่ใช้ในการจับคู่แพ็คเก็ต
  • เป้าหมาย คือการดำเนินการเมื่อกฎที่เป็นไปได้ตรงกัน ตัวอย่างของเป้าหมาย ได้แก่ ACCEPT, DROP, QUEUE
  • นโยบาย เป็นการดำเนินการเริ่มต้นในกรณีที่ไม่ตรงกับโซ่ในตัวและสามารถยอมรับหรือปล่อยได้

ไวยากรณ์:

iptables - ตารางตาราง -A / -C / -D ... กฎ CHAIN ​​- เป้าหมายกระโดด

apt-get

apt-get เป็นเครื่องมือบรรทัดคำสั่งที่ช่วยในการจัดการแพ็คเกจใน Linux ภารกิจหลักคือการดึงข้อมูลและแพ็กเกจจากแหล่งที่ได้รับการพิสูจน์ตัวตนสำหรับการติดตั้งอัพเกรดและลบแพ็กเกจพร้อมกับการอ้างอิง APT ย่อมาจากไฟล์ เครื่องมือบรรจุภัณฑ์ขั้นสูง .

ไวยากรณ์:

apt-get [ตัวเลือก] คำสั่ง

ปรับปรุง: คำสั่งนี้ใช้เพื่อซิงโครไนซ์ไฟล์ดัชนีแพ็กเกจจากแหล่งที่มาอีกครั้ง คุณต้องทำการอัปเดตก่อนที่จะอัปเกรด

อัปเดต apt-get

df คุณ

df ( ดิสก์ฟรี ) รายงานจำนวนเนื้อที่ว่างบนดิสก์ที่ระบบไฟล์ใช้ ดู ( การใช้งานดิสก์ ) รายงานขนาดของแผนผังไดเร็กทอรีซึ่งรวมถึงเนื้อหาทั้งหมดและขนาดของไฟล์แต่ละไฟล์

จุดมุ่งหมายคือเพื่อให้แน่ใจว่าคุณไม่ได้ทำเกินเกณฑ์ 80% หากคุณมีค่าเกินเกณฑ์ถึงเวลาที่จะต้องปรับขนาดหรือทำความสะอาดสิ่งที่ยุ่งเหยิงเนื่องจากทรัพยากรที่ใช้หมดคุณมีการเปลี่ยนแปลงแอปพลิเคชันของคุณจะแสดงพฤติกรรมที่ไม่แน่นอน

วิธีตรวจสอบในรูปแบบที่มนุษย์อ่านได้:

$ sudo df -h

แต่ในกรณีส่วนใหญ่คุณต้องการตรวจสอบว่าส่วนใดของระบบของคุณใช้พื้นที่ดิสก์มาก ใช้คำสั่งต่อไปนี้:

$ sudo du -h -d 1 / var /

htop

htop คำสั่งในระบบ Linux เป็นยูทิลิตี้บรรทัดคำสั่งที่ช่วยให้ผู้ใช้สามารถตรวจสอบทรัพยากรที่สำคัญของระบบหรือกระบวนการของเซิร์ฟเวอร์แบบโต้ตอบได้แบบเรียลไทม์ นี่เป็นโปรแกรมที่ใหม่กว่าเมื่อเทียบกับคำสั่งด้านบนและมีการปรับปรุงมากมายเหนือคำสั่งด้านบน รองรับการใช้งานเมาส์ใช้สีในเอาต์พุตและแสดงสัญญาณภาพเกี่ยวกับโปรเซสเซอร์หน่วยความจำและการใช้งานสว็อป นอกจากนี้ htop ยังพิมพ์บรรทัดคำสั่งแบบเต็มสำหรับกระบวนการและอนุญาตให้เลื่อนทั้งแนวตั้งและแนวนอนสำหรับกระบวนการและบรรทัดคำสั่งตามลำดับ

ไวยากรณ์ -

htop

  • -d - ล่าช้า: ใช้เพื่อแสดงความล่าช้าระหว่างการอัปเดตในหน่วยสิบวินาที
  • -C - ไม่มีสี - ไม่มีสี : เริ่ม htop ในโหมดขาวดำ
  • -h – help: ใช้เพื่อแสดงข้อความช่วยเหลือและออก
  • -u –user = USERNAME: ใช้เพื่อแสดงกระบวนการของผู้ใช้ที่กำหนดเท่านั้น

ปล

ทุกกระบวนการใน Linux มี ID เฉพาะและสามารถมองเห็นได้โดยใช้คำสั่ง ps

  • $ sudo ps aux
  • ถึง = แสดงกระบวนการสำหรับผู้ใช้ทั้งหมด
  • ยู = แสดงผู้ใช้ / เจ้าของของกระบวนการ
  • x = ยังแสดงกระบวนการที่ไม่ได้เชื่อมต่อกับเทอร์มินัล

ฆ่า

ฆ่า คำสั่งใน Linux (อยู่ใน / bin / kill) เป็นคำสั่งในตัวที่ใช้เพื่อยุติกระบวนการด้วยตนเอง คำสั่งนี้จะส่งสัญญาณไปยังกระบวนการที่ยุติกระบวนการ หากผู้ใช้ไม่ระบุสัญญาณที่จะส่งไปพร้อมกับคำสั่ง kill ก็จะเป็นค่าเริ่มต้น ระยะเวลา มีการส่งสัญญาณเพื่อยุติกระบวนการ

ฆ่า -l : ในการแสดงสัญญาณที่มีทั้งหมดคุณสามารถใช้ตัวเลือกคำสั่งด้านล่าง:

ไวยากรณ์: $ ฆ่า -l

  • ค่า PID เชิงลบใช้เพื่อระบุ ID กลุ่มกระบวนการ หากคุณส่งรหัสกลุ่มกระบวนการกระบวนการทั้งหมดภายในกลุ่มนั้นจะได้รับสัญญาณ
  • PID ของ -1 มีความพิเศษมากเนื่องจากบ่งชี้กระบวนการทั้งหมดยกเว้น kill และ init ซึ่งเป็นกระบวนการหลักของกระบวนการทั้งหมดในระบบ
  • หากต้องการแสดงรายการของกระบวนการที่กำลังทำงานอยู่ให้ใช้คำสั่ง ปล และนี่จะแสดงให้คุณเห็นกระบวนการที่กำลังดำเนินการด้วยหมายเลข PID ในการระบุว่ากระบวนการใดควรได้รับสัญญาณการฆ่าเราจำเป็นต้องระบุ PID

ไวยากรณ์:

$ ps

ฆ่าพิด: เพื่อแสดงวิธีใช้ไฟล์ PID กับ ฆ่า คำสั่ง

ไวยากรณ์:

$ ฆ่า pid

เทลเน็ต

Telnet ช่วยในการ -

  • เชื่อมต่อกับคอมพิวเตอร์ Linux ระยะไกล
  • เรียกใช้โปรแกรมจากระยะไกลและดำเนินการบริหาร

ไวยากรณ์

  • ชื่อโฮสต์ telnet =”” หรือ =””
  • ตัวอย่าง:
  • telnet localhost

เชลล์สคริปต์

เชลล์คืออะไร?

ระบบปฏิบัติการมีส่วนประกอบมากมาย แต่ส่วนประกอบสำคัญสองส่วนคือเคอร์เนลและเชลล์

คุณสามารถพิจารณา Kernel เป็นนิวเคลียสของคอมพิวเตอร์ ทำให้การสื่อสารระหว่างฮาร์ดแวร์และซอฟต์แวร์เป็นไปได้ เคอร์เนลเป็นส่วนในสุดของระบบปฏิบัติการในขณะที่เชลล์เป็นส่วนนอกสุด

เชลล์ในระบบปฏิบัติการลินุกซ์รับอินพุตจากผู้ใช้ในรูปแบบของคำสั่งประมวลผลจากนั้นให้เอาต์พุต ทำหน้าที่เป็นส่วนต่อประสานที่ผู้ใช้ทำงานกับโปรแกรมคำสั่งและสคริปต์ เทอร์มินัลเข้าถึงเชลล์และรันคำสั่ง

เมื่อรันเทอร์มินัลเชลล์จะออกพรอมต์คำสั่ง (โดยปกติคือ $) ซึ่งเป็นไปได้ที่จะพิมพ์อินพุตของคุณหลังจากนั้นเทอร์มินัลจะเรียกใช้งานเมื่อคุณกดปุ่ม Enter จากนั้นเทอร์มินัลจะแสดงผลลัพธ์ของคำสั่งของคุณ

เชลล์ห่อหุ้มไว้รอบ ๆ ด้านในที่บอบบางของระบบปฏิบัติการเพื่อป้องกันไม่ให้เกิดความเสียหายจากอุบัติเหตุ ดังนั้นชื่อเชลล์

ลินุกซ์มีสองเชลล์หลัก:

  1. เปลือกบอร์น : พร้อมต์สำหรับเชลล์นี้คือ $ และอนุพันธ์มีดังนี้:
  • POSIX shell เรียกอีกอย่างว่า sh
  • Korn Shell หรือที่เรียกว่า sh
  • Bourne Again SHell เรียกอีกอย่างว่า bash (เป็นที่นิยมมากที่สุด)

2. เปลือก C: % หมายถึงพรอมต์สำหรับเชลล์นี้และหมวดหมู่ย่อยมีดังนี้:

  • C เชลล์เรียกอีกอย่างว่า csh
  • ท็อปส์ซีเชลล์เรียกอีกอย่างว่า tcsh

Shell Scripting คืออะไร?

เชลล์สคริปต์กำลังเขียนชุดคำสั่งสำหรับเชลล์ที่สามารถเรียกใช้งานได้ สามารถรวมลำดับคำสั่งทั้งแบบยาวและแบบซ้ำ ๆ ลงในสคริปต์เดียวและแบบธรรมดา คุณสามารถจัดเก็บสคริปต์นี้และเรียกใช้งานได้ทุกเมื่อที่คุณต้องการ สิ่งนี้ช่วยลดความพยายามของผู้ใช้ปลายทางได้อย่างมาก

ต่อไปนี้เป็นขั้นตอนในการสร้างเชลล์สคริปต์ -

  • สร้างไฟล์โดยใช้โปรแกรมแก้ไขข้อความเช่น vi หรือโปรแกรมแก้ไขอื่น ๆ ชื่อไฟล์สคริปต์ที่มีนามสกุล. sh
  • เริ่มต้นสคริปต์ด้วย #! / bin / sh
  • เขียนโค้ด.
  • บันทึกไฟล์สคริปต์เป็น filename.sh
  • สำหรับการเรียกใช้สคริปต์ประเภท bash filename.sh

“ #!” เป็นตัวดำเนินการที่เรียกว่า shebang ที่ชี้สคริปต์ไปยังตำแหน่งล่าม ดังนั้นถ้าเราใช้” #! / bin / sh” สคริปต์ชี้ไปที่ bourne-shell

ตอนนี้เราจะสร้างไฟล์โดยใช้ตัวแก้ไขเช่น vi และบันทึกด้วยนามสกุล. sh คัดลอกโปรแกรมต่อไปนี้ที่เพิ่มและพิมพ์ผลรวมของตัวเลขที่ผู้ใช้ป้อน จากนั้นรันโปรแกรมนี้โดยใช้คำสั่ง bash filename.sh

#! / bin / ช

echo 'ป้อนตัวเลข'
อ่าน Num
g = $ cb

# เก็บผลรวมของ
# หลัก
s = 0

# ใช้ขณะวนไปที่
# คำนวณผลรวม
# ของตัวเลขทั้งหมด
ในขณะที่ [$ Num -gt 0]
ทำ
# รับส่วนที่เหลือ
k = $ (($ num% 10))

# รับหลักถัดไป
Num = $ (($ Num / 10))

# คำนวณผลรวมของ
# หลัก
s = $ (($ s + $ k))

เสร็จแล้ว
echo 'ผลรวมของตัวเลข $ g คือ $ s'

คำสั่ง Git

Git คืออะไร?

Git เป็นระบบควบคุมเวอร์ชันแจกจ่ายแบบโอเพนซอร์สฟรี เครื่องมือนี้จัดการทุกอย่างตั้งแต่โครงการขนาดเล็กไปจนถึงโครงการขนาดใหญ่ด้วยความเร็วและประสิทธิภาพ Linus Torvalds สร้างขึ้นในปี 2548 เพื่อพัฒนาเคอร์เนลลินุกซ์ Git มีฟังก์ชันประสิทธิภาพความปลอดภัยและความยืดหยุ่นที่ทีมส่วนใหญ่และนักพัฒนาแต่ละคนต้องการ

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

คำสั่ง Git

เริ่มต้นคอมไพล์

การใช้งาน : git init [ชื่อที่เก็บ]

คำสั่งนี้สร้างที่เก็บใหม่

git config

การใช้งาน : git config - ชื่อผู้ใช้ทั่วโลก“ [ชื่อ]”

การใช้งาน : git config --global user.email“ [ที่อยู่อีเมล]”

คำสั่งนี้ตั้งชื่อผู้แต่งและที่อยู่อีเมลตามลำดับ นี่เป็นข้อมูลที่มีประโยชน์ในการคอมมิต

git โคลน

การใช้งาน : git clone [url]

คำสั่งนี้ช่วยให้คุณได้รับสำเนาของที่เก็บจาก URL ที่มีอยู่

คอมไพล์เพิ่ม

การใช้งาน: git เพิ่ม [ไฟล์]

คำสั่งนี้เพิ่มไฟล์ในพื้นที่การจัดเตรียม

การใช้งาน: คอมไพล์เพิ่ม *

คำสั่งนี้เพิ่มอย่างน้อยหนึ่งอย่างในพื้นที่การจัดเตรียม

คอมมิตคอมมิต

การใช้งาน: คอมมิตคอมมิต -m“ [พิมพ์ข้อความคอมมิต]”

คำสั่งนี้บันทึกหรือสแนปชอตไฟล์อย่างถาวรในประวัติเวอร์ชัน

การใช้งาน: คอมมิตคอมมิต -a

คำสั่งนี้คอมมิตไฟล์ใด ๆ ที่คุณเพิ่มด้วยคำสั่ง git add และคอมมิตไฟล์ใด ๆ ที่คุณเปลี่ยนไปตั้งแต่นั้นมา

สถานะคอมไพล์

การใช้งาน: สถานะคอมไพล์

สถานะคอมไพล์คำสั่งแสดงสถานะของไดเร็กทอรีการทำงานและพื้นที่การจัดเตรียมคำสั่งนี้ช่วยให้คุณเห็นการเปลี่ยนแปลงที่อยู่ในการจัดเตรียมการเปลี่ยนแปลงที่ไม่ได้จัดฉากและไม่ถูกติดตามโดย Git

แสดง git

การใช้งาน: แสดง git [กระทำ]

คำสั่งนี้แสดงการเปลี่ยนแปลงข้อมูลเมตาและเนื้อหาของคอมมิตที่ระบุ

ไป rm

การใช้งาน: git rm [ไฟล์]

คำสั่งนี้จะลบไฟล์ออกจากไดเร็กทอรีการทำงานของคุณและขั้นตอนการลบ

git remote

การใช้งาน: git remote add [ชื่อตัวแปร] [Remote Server Link]

คำสั่งนี้เชื่อมต่อที่เก็บโลคัลของคุณกับรีโมตเซิร์ฟเวอร์

git push

การใช้งาน: git push [ชื่อตัวแปร] master

คำสั่งนี้ส่งการเปลี่ยนแปลงที่มุ่งมั่นของสาขาหลักไปยังที่เก็บระยะไกลของคุณ

การใช้งาน: git push [ชื่อตัวแปร] [สาขา]

คำสั่งนี้ส่ง branch commits ไปยังที่เก็บระยะไกลของคุณ

การใช้งาน: git push –all [ชื่อตัวแปร]

คำสั่งนี้พุชสาขาทั้งหมดไปยังที่เก็บระยะไกลของคุณ

การใช้งาน: git push [ชื่อตัวแปร]: [ชื่อสาขา]

คำสั่งนี้จะลบสาขาบนที่เก็บระยะไกลของคุณ

git ดึง

การใช้งาน: git pull [ลิงค์ที่เก็บ]

คำสั่งนี้ดึงและรวมการเปลี่ยนแปลงบนเซิร์ฟเวอร์ระยะไกลเข้ากับไดเร็กทอรีการทำงานของคุณ

สาขาคอมไพล์

การใช้งาน: สาขาคอมไพล์

คำสั่งนี้แสดงรายการสาขาโลคัลทั้งหมดในที่เก็บปัจจุบัน

การใช้งาน: สาขา git [ชื่อสาขา]

คำสั่งนี้สร้างสาขาใหม่

การใช้งาน: git branch -d [ชื่อสาขา]

คำสั่งนี้จะลบสาขาคุณลักษณะ

git ชำระเงิน

การใช้งาน: การชำระเงิน git [ชื่อสาขา]

คำสั่งนี้ให้คุณสลับจากสาขาหนึ่งไปยังอีกสาขาหนึ่ง

การใช้งาน: git checkout -b [ชื่อสาขา]

คำสั่งนี้จะสร้างสาขาใหม่และเปลี่ยนไปใช้ด้วย

ไปรวม

การใช้งาน: git ผสาน [ชื่อสาขา]

คำสั่งนี้จะรวมประวัติของสาขาที่ระบุเข้ากับสาขาปัจจุบัน

git rebase

การใช้งาน: git rebase [ชื่อสาขา]

git rebase master - คำสั่งนี้จะย้ายงานทั้งหมดของเราจากสาขาปัจจุบันไปที่มาสเตอร์

ด้วยเหตุนี้เราจึงมาถึงจุดสิ้นสุดของบล็อกเกี่ยวกับคำสั่ง Linux ใน DevOps ฉันพยายามครอบคลุมคำสั่งต่างๆให้มากที่สุดเท่าที่จะทำได้ที่นี่ บล็อกนี้จะช่วยให้คุณเริ่มต้นการเดินทางกับ DevOps ได้อย่างแน่นอน

ตอนนี้คุณเข้าใจแล้วว่าคำสั่ง Linux ใน DevOps คืออะไรลองดูสิ่งนี้ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก หลักสูตรการฝึกอบรม Edureka DevOps Certification ช่วยให้ผู้เรียนเข้าใจว่า DevOps คืออะไรและได้รับความเชี่ยวชาญในกระบวนการและเครื่องมือต่างๆของ DevOps เช่น Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack และ GIT สำหรับการทำงานหลายขั้นตอนใน SDLC โดยอัตโนมัติ

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป