การทำให้ตัวอักษรเป็นตัวพิมพ์ใหญ่ในสตริง

Bash:
การทำให้ตัวอักษรเป็นตัวพิมพ์ใหญ่ในสตริง

วิธีการ:

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

โดยใช้การขยายพารามิเตอร์:

วิธีนี้จะจัดการสตริงโดยตรงในเชลล์

str="hello world"
capitalized="${str^}"
echo "$capitalized"

ผลลัพธ์:

Hello world

โดยใช้ awk:

awk เป็นเครื่องมือประมวลผลข้อความที่มีประสิทธิภาพ ซึ่งมีอยู่ในระบบปฏิบัติการที่คล้าย Unix ส่วนใหญ่ สามารถใช้เพื่อทำให้สตริงเป็นตัวพิมพ์ใหญ่

str="hello world"
echo "$str" | awk '{print toupper(substr($0, 1, 1)) tolower(substr($0, 2))}'

ผลลัพธ์:

Hello world

โดยใช้ sed:

สำหรับวิธีการที่แบบดั้งเดิมยิ่งขึ้น sed สามารถใช้เพื่อทำให้ตัวอักษรแรกของสตริงเป็นตัวพิมพ์ใหญ่ อย่างไรก็ตาม วิธีนี้มีความซับซ้อนมากกว่าวิธีก่อนหน้า

str="hello world"
echo "$str" | sed 's/./\u&/'

ผลลัพธ์:

Hello world

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