ฉันมีสตริงเหมือนAxxBCyyyDEFzzLMNและฉันต้องการจะแทนที่เกิดขึ้นทั้งหมดของX , YและZกับ_
ฉันจะบรรลุสิ่งนี้ได้อย่างไร
ฉันรู้ว่าecho "$string" | tr 'x' '_' | tr 'y' '_'
มันใช้งานได้ แต่ฉันต้องการที่จะทำในครั้งเดียวโดยไม่ต้องใช้ท่อ
tr '[xyz]'
จะแทนที่[
และ]
ด้วย อาร์กิวเมนต์ควรเป็นเพียงรายการของตัวละคร (แม้ว่าช่วงเช่นa-z
จะไม่เป็นไรและในการใช้งานบางอย่างคลาสอักขระ POSIX เช่น[:digit:]
)
AxyzB
? สามขีดหรือหนึ่ง?