ฉันเป็นผู้เริ่มต้นในสคริปต์ทุบตีฉันต้องการสร้างสคริปต์ทุบตีเพื่อติดตั้งและกำหนดค่าเนื้อหาในกล่อง Linux ของฉันในวิธีอัตโนมัติ
สมมติว่าฉันต้องการแก้ไข
/etc/yum.repos.d/epel.repo
โดยสคริปต์ทุบตี
สิ่งที่ฉันอยากทำมีดังนี้
- เปิดไฟล์ /etc/yum.repos.d/epel.repo
- ค้นหาส่วน [epel]
- เพิ่มลำดับความสำคัญของบรรทัด = 10 หลังจากเปิดใช้งานบรรทัด = 1 ในส่วน epel
สำหรับส่วนแรกฉันเพิ่ม
yum install nano
nano /etc/yum.repos.d/epel.repo
คำถามของฉันคือวิธีการทำส่วนที่ 2 และ 3 ด้วยสคริปต์ทุบตีโดยใช้นาโน (ถ้าเป็นไปได้ในกรณีที่เป็นไปไม่ได้จากนั้นแสดงด้วย sed)
นอกจากนี้ในบางจุดฉันจะต้องแก้ไขตัวแปรในไฟล์เช่น
- เปิดใช้งาน = 0 เพื่อเปิดใช้งาน = 1
- การทดสอบ = "1" ถึงการทดสอบ = "0"
- เพิ่มข้อความในบรรทัด ฟังก์ชั่น = เพื่อฟังก์ชั่น = "text1", "text2"
- เพิ่มข้อความลงในไฟล์และบันทึก (ด้วย nano)
ฉันรู้ว่ามันมีความต้องการ แต่ฉันจำเป็นต้องสร้างสิ่งนี้ให้กับเพื่อนที่เป็น noob ในการจัดการเซิร์ฟเวอร์โชคไม่ดีที่ฉันไม่มีเวลาศึกษาการใช้สคริปต์ bash ตั้งแต่เริ่มต้นเนื่องจากการสอบของฉันใกล้เข้ามาฉันจะใช้ตัวอย่างของคุณเขียนสคริปต์
คนขอบคุณสำหรับการตอบกลับทั้งหมดที่ฉันได้ทำสคริปต์ทุบตีสำเร็จเป็นส่วนใหญ่
อย่างไรก็ตามฉันมีปัญหาอื่นให้สมมติว่าฉันต้องการแก้ไข nginx.conf โดยใช้ sed เราจะจัดการกับ worker_processes
ตอนนี้ฉันต้องการใช้ sed เพื่อทำสิ่งต่อไปนี้ 1. ค้นหาการเกิดขึ้นครั้งแรกของ worker_processes
conf และแทนที่ข้อความด้วยworker_processes 4;
หมายเหตุพิเศษที่นี่: นี่เป็นเพียงตัวอย่าง มันอาจเกิดขึ้นได้ว่า conf มี worker_processes 1; . นี่เป็นส่วนที่ยาก ฉันต้องการคำสั่ง sed ที่ค้นหากรณีการจับคู่ครั้งแรกของ word worker_processesลบบรรทัดข้อความที่พบคำนั้นและวางที่ worker_processes 4;
นั่นแล้วบันทึกไฟล์ นี่เป็นวิธีที่เชื่อถือได้มากที่สุดเมื่อฉันแก้ไขไฟล์ (โดยไม่เสี่ยงต่อการเกิดข้อผิดพลาดใด ๆ
หนึ่งคำแนะนำสุดท้ายที่ฉันใช้ sed -i 's / enabled = 0 / enabled = 1 / g' /etc/yum.repos.d/remi.repo เพื่อเปลี่ยน enable = 0 เป็น enable = 1 ภายใต้ส่วน [remi] ใน remi .repo. อย่างไรก็ตามฉันมีความรู้สึกว่ามันอาจแก้ไขการเปิดใช้งานทั้งหมด = 0 ในไฟล์นั้นซึ่งจะสร้างความเสียหายให้กับเซิร์ฟเวอร์ทุกคนสามารถแนะนำรหัสที่ดีกว่า
สิ่งอื่นที่ฉันไม่แน่ใจ: PI ต้องการแก้ไขไฟล์ที่มีสิ่งนี้เป็น Text Testing = "0" (ใช่มันมีเครื่องหมายคำพูดและฉันจำเป็นต้องเก็บไว้) มันควรได้รับการแก้ไขจากการทดสอบ = "0" ถึงการทดสอบ = " 1 "(พร้อมเครื่องหมายคำพูด)
นอกจากนี้ฉันต้องเพิ่มข้อความด้วยเครื่องหมายคำพูดท้ายไฟล์ด้วย sed เช่น "Thanks Quanta" (พร้อมเครื่องหมายอัญประกาศ) สำหรับ php คุณใส่ a ด้วยเครื่องหมายคำพูดสะท้อนไม่ทราบว่าทำอย่างไรเพื่อทุบตี
อีกสิ่งหนึ่งที่
ฉันต้องแก้ไขในบรรทัด conf แต่ฉันจำไม่ได้ว่าอะไรคือสิ่งที่แทนที่ข้อความทั้งหมด
ชอบฟัง = บางสิ่ง; ฉันต้องการแก้ไขเพื่อฟัง = /tmp/php5-fpm.sock;
นิ้วโป้งขนาดใหญ่ขึ้นสำหรับควอนตัม
ขอบคุณสำหรับการสนับสนุนที่ยอดเยี่ยม