พื้นฐานของ Linux และการเขียนสคริปต์เป็นหนึ่งในทักษะที่สำคัญที่สุดของ DevOps Professionalบริษัท ส่วนใหญ่มีสภาพแวดล้อมบน Linux รวมถึงเครื่องมือ CM มากมายเช่น - Puppet, Chef และ Ansible มีโหนดหลักบน Linuxดังนั้นในบล็อกนี้ฉันจะครอบคลุมส่วนบรรทัดคำสั่งทั้งหมดซึ่งเป็นส่วนสำคัญของ . หัวข้อที่เราจะกล่าวถึงมีดังต่อไปนี้ -
มาเริ่มกันเลย
ลินุกซ์คืออะไร?
ลินุกซ์ เป็นระบบปฏิบัติการโอเพ่นซอร์สและชุมชนที่พัฒนาขึ้นสำหรับคอมพิวเตอร์เซิร์ฟเวอร์เมนเฟรมอุปกรณ์เคลื่อนที่และอุปกรณ์ฝังตัว มีการสนับสนุนบนแพลตฟอร์มคอมพิวเตอร์ที่สำคัญเกือบทุกแพลตฟอร์มรวมถึง 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:
ในการสำรองข้อมูลฮาร์ดดิสก์ทั้งหมด: ในการสำรองข้อมูลสำเนาทั้งหมดของฮาร์ดดิสก์ไปยังฮาร์ดดิสก์อื่นที่เชื่อมต่อกับระบบเดียวกันให้ดำเนินการคำสั่ง dd ดังที่แสดง ในตัวอย่างคำสั่ง dd นี้ชื่ออุปกรณ์ UNIX ของฮาร์ดดิสก์ต้นทางคือ / dev / hda และชื่ออุปกรณ์ของฮาร์ดดิสก์เป้าหมายคือ / dev / hdb
- #
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 จะสร้างเอาต์พุตคอลัมน์ดังที่แสดงไว้ด้านบนโดยที่คอลัมน์:
- การแสดงผลทั้งหมด หน่วยความจำที่ติดตั้งทั้งหมด (MemTotal และ SwapTotal คือ มีอยู่ใน / proc / meminfo)
- ใช้แสดง หน่วยความจำที่ใช้
- แสดงฟรี หน่วยความจำที่ไม่ได้ใช้
- จอแสดงผลที่ใช้ร่วมกัน หน่วยความจำที่ใช้โดย tmpfs (Shmen คือ มีอยู่ใน / proc / meminfo และแสดงเป็นศูนย์ในกรณีที่ไม่พร้อมใช้งาน)
- แสดงบัฟเฟอร์ หน่วยความจำที่ใช้โดยเคอร์เนลบัฟเฟอร์
- แสดงแคช หน่วยความจำที่ใช้โดยแคชของเพจและแผ่นพื้น (แคชและ Slab มีอยู่ใน / proc / meminfo)
- แสดงบัฟเฟอร์ / แคช ผลรวมของบัฟเฟอร์และแคช
ตัวเลือกสำหรับคำสั่งฟรี
- -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
ตัวอย่างคำสั่ง
- วิธีแปลงตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่
ในการแปลงจากตัวพิมพ์เล็กไปเป็นตัวพิมพ์ใหญ่สามารถใช้ชุดที่กำหนดไว้ล่วงหน้าใน 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 จากนั้นเทอร์มินัลจะแสดงผลลัพธ์ของคำสั่งของคุณ
เชลล์ห่อหุ้มไว้รอบ ๆ ด้านในที่บอบบางของระบบปฏิบัติการเพื่อป้องกันไม่ให้เกิดความเสียหายจากอุบัติเหตุ ดังนั้นชื่อเชลล์
ลินุกซ์มีสองเชลล์หลัก:
- เปลือกบอร์น : พร้อมต์สำหรับเชลล์นี้คือ $ และอนุพันธ์มีดังนี้:
- 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 โดยอัตโนมัติ
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป