กลับไปหน้าบทความ

อ่าน 3 นาที

tr (ยูนิกซ์)

tr เป็น คำสั่ง ใน ระบบปฏิบัติการ Unix , Plan 9 , Inferno และ ระบบปฏิบัติการ ที่คล้าย Unix เป็นคำย่อของ translate หรือ transliterate...

tr (ยูนิกซ์)

tr
ผู้เขียนต้นฉบับดักลาส แมคอิลรอย ( เอทีแอนด์ที เบลล์ แล็บโบราทอรีส์ )
นักพัฒนานักพัฒนาซอฟต์แวร์โอเพนซอร์สและเชิงพาณิชย์หลายราย
ปล่อยพฤศจิกายน พ.ศ. 2516 ( พ.ศ. 2516-2514 )
เขียนเป็นซี
ระบบปฏิบัติการยูนิก , ระบบปฏิบัติการคล้ายยูนิก , Plan 9 , Inferno , OS-9 , MSX-DOS , IBM i
แพลตฟอร์มข้ามแพลตฟอร์ม
พิมพ์สั่งการ
ใบอนุญาตcoreutils : GPLv3+แผน 9: ใบอนุญาต MIT
ที่เก็บข้อมูล
  • openbsd .su /src /usr .bin /tr /

trเป็นคำสั่งใน ระบบปฏิบัติการ Unix , Plan 9 , Infernoและ ระบบปฏิบัติการ ที่คล้าย Unixเป็นคำย่อของtranslateหรือtransliterateซึ่งบ่งบอกถึงการทำงานของการแทนที่หรือลบอักขระเฉพาะในชุดข้อมูลอินพุต

ภาพรวม

โปรแกรมนี้อ่านสตรีมไบต์จากอินพุตมาตรฐานและเขียนผลลัพธ์ไปยังเอาต์พุตมาตรฐานโดยรับอาร์กิวเมนต์เป็นชุดอักขระสองชุด (โดยทั่วไปมีความยาวเท่ากัน) และแทนที่อักขระในชุดแรกด้วยองค์ประกอบที่สอดคล้องกันจากชุดที่สอง ตัวอย่างเช่น

tr 'abcd' 'jkmn' 

ฟังก์ชัน นี้ จะจับคู่ตัวอักษรaกับj , bกับk , cกับmและdกับn

ชุดอักขระสามารถย่อได้โดยใช้ช่วงอักขระ ตัวอย่างก่อนหน้านี้สามารถเขียนได้ดังนี้:

tr 'ad' 'jkmn' 

ในเวอร์ชันที่สอดคล้อง กับมาตรฐาน POSIXtrชุดอักขระที่แสดงโดยช่วงอักขระจะขึ้นอยู่กับลำดับการเรียงของภาษาท้องถิ่น ดังนั้นจึงปลอดภัยกว่าที่จะหลีกเลี่ยงการใช้ช่วงอักขระในสคริปต์ที่อาจถูกเรียกใช้ในภาษาท้องถิ่นที่แตกต่างจากภาษาที่เขียนสคริปต์นั้น ช่วงอักขระมักจะสามารถแทนที่ด้วย ชุดอักขระ POSIXเช่น[:alpha:]ได้

sตัวเลือกนี้ จะ trบีบอัดลำดับของอักขระที่เหมือนกันที่อยู่ติดกันในผลลัพธ์ให้เหลือเพียงโทเค็นเดียว ตัวอย่างเช่น

tr -s '\n' 

แทนที่ลำดับของอักขระขึ้นบรรทัดใหม่หนึ่งตัวขึ้นไปด้วยอักขระขึ้นบรรทัดใหม่เพียงตัวเดียว

แฟล็ก นี้dจะทำให้trลบโทเค็นทั้งหมดของชุดอักขระที่ระบุออกจากอินพุต ในกรณีนี้ จะใช้เพียงอาร์กิวเมนต์ชุดอักขระเดียวเท่านั้น คำสั่งต่อไปนี้จะลบอักขระขึ้นบรรทัดใหม่ (carriage return)

tr -d '\r' 

ธงcแสดงถึงส่วนเติมเต็มของชุดอักขระชุดแรก การเรียกใช้

tr -cd '[:alnum:]' 

ดังนั้นจึงลบอักขระที่ไม่ใช่ตัวอักษรและตัวเลขทั้งหมดออก

การนำไปใช้

เวอร์ชันดั้งเดิมtrเขียนโดยDouglas McIlroyและเปิดตัวในUnix เวอร์ชัน 4 [ 1 ]

เวอร์ชันที่trรวมอยู่ในGNU coreutilsเขียนโดย Jim Meyering [ 2 ]คำสั่งนี้มีให้ใช้งานเป็นแพ็กเกจแยกต่างหากสำหรับMicrosoft Windowsซึ่งเป็นส่วนหนึ่งของชุดUnxUtils ซึ่งเป็น พอร์ตWin32 ดั้งเดิม ของยูทิลิตี้ทั่วไปที่คล้ายกับ GNU Unix [ 3 ]นอกจากนี้ยังมีให้ใช้งานในเชลล์OS-9 [ 4 ]คำสั่งนี้ยังเป็นส่วนหนึ่งของMSX-DOS2 ToolsของASCIIสำหรับMSX-DOSเวอร์ชัน 2 [ 5 ]คำ สั่ง trยังได้รับการพอร์ตไปยังระบบปฏิบัติการIBM i ด้วย [ 6 ]tr

ระบบส่วนใหญ่trรวมถึง GNU trและ Unix รุ่นคลาสสิกtrทำงานกับอักขระแบบไบต์เดียวและไม่ รองรับ Unicodeข้อยกเว้นคือ การใช้งาน Heirloom Toolchestซึ่งให้การสนับสนุน Unicode ขั้นพื้นฐาน

RubyและPerlยังมี ตัวดำเนินการ tr ภายใน ซึ่งทำงานในลักษณะเดียวกัน[ 7 ] [ 8 ] คำสั่ง mapของ สตริงใน Tclนั้นเป็นแบบทั่วไปมากกว่า เนื่องจากมันแมปสตริงไปยังสตริง ในขณะที่ tr แมปอักขระไปยังอักขระ[ 9 ]

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Tr_(Unix)&oldid=1336333404 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ tr (ยูนิกซ์)

tr เป็น คำสั่ง ใน ระบบปฏิบัติการ Unix , Plan 9 , Inferno และ ระบบปฏิบัติการ ที่คล้าย Unix เป็นคำย่อของ translate หรือ transliterate...

ภาพรวม

โปรแกรมนี้อ่านสตรีมไบต์จาก อินพุตมาตรฐาน และเขียนผลลัพธ์ไปยัง เอาต์พุตมาตรฐาน โดยรับ อาร์กิวเมนต์ เป็นชุดอักขระสองชุด (โดยทั่วไปมีความยาวเท่ากัน) และแทนที่อักขระในชุดแรกด้วยองค์ประกอบที่สอดคล้องกันจากชุดที่สอง ตัวอย่างเช่น

การนำไปใช้

เวอร์ชันดั้งเดิม tr เขียนโดย Douglas McIlroy และเปิดตัวในUnix เวอร์ชัน 4 [ 1 ]

ดูเพิ่มเติม

เซด รายการคำสั่ง Unix ยูทิลิตี้หลักของ GNU