นี่คือคำสั่ง basenameposix ที่สามารถเรียกใช้ในผู้ให้บริการโฮสติ้งฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
basename — ส่งคืนส่วนที่ไม่ใช่ไดเร็กทอรีของชื่อพาธ
เรื่องย่อ
ชื่อฐาน เชือก [วิภัตติ]
DESCRIPTION
พื้นที่ เชือก ตัวถูกดำเนินการจะถือเป็นชื่อพาธตามที่กำหนดไว้ในคำจำกัดความพื้นฐาน
ปริมาณของ POSIX.1–2008, Section 3.267, ชื่อพาธ. สตริง เชือก จะถูกแปลงเป็น
ชื่อไฟล์ที่สอดคล้องกับองค์ประกอบชื่อพาธสุดท้ายใน เชือก แล้วต่อท้าย
เชือก วิภัตติหากมีให้ถอดออก ให้กระทำโดยการกระทำ
เทียบเท่ากับขั้นตอนต่อไปนี้ตามลำดับ:
1 ถ้า เชือก เป็นสตริงว่าง ไม่ได้ระบุว่าสตริงผลลัพธ์เป็น '.' or
สตริงว่าง ไม่ว่าในกรณีใด ให้ข้ามขั้นตอนที่ 2 ถึง 6
2 ถ้า เชือก is "//", เป็นการดำเนินการที่กำหนดไว้ไม่ว่าจะข้ามขั้นตอนที่ 3 ถึง 6 หรือ
ประมวลผล.
3 ถ้า เชือก ประกอบด้วย ตัวละคร เชือก จะถูกกำหนดให้เป็นหนึ่งเดียว
อักขระ. ในกรณีนี้ ให้ข้ามขั้นตอนที่ 4 ถึง 6
4.หากมีการตามหลังใดๆ ตัวอักษรใน เชือกพวกเขาจะลบออก
5. ถ้ามี ตัวอักษรที่เหลืออยู่ใน เชือก, คำนำหน้าของ เชือก จนถึง
และรวมถึงสุดท้าย ตัวอักษรใน เชือก จะถูกลบออก
6 หาก วิภัตติ ตัวถูกดำเนินการมีอยู่ไม่เหมือนกับอักขระที่เหลืออยู่ใน
เชือกและเหมือนกับคำต่อท้ายของอักขระที่เหลืออยู่ใน เชือก, คำต่อท้าย
วิภัตติ จะถูกลบออกจาก เชือก. มิฉะนั้น, เชือก ไม่ถูกแก้ไขโดยขั้นตอนนี้
ไม่ถือเป็นความผิดพลาดหาก วิภัตติ ไม่พบใน เชือก.
สตริงผลลัพธ์จะถูกเขียนไปยังเอาต์พุตมาตรฐาน
OPTIONS
ไม่
ตัวดำเนินการ
ตัวถูกดำเนินการดังต่อไปนี้จะได้รับการสนับสนุน:
เชือก สตริง.
วิภัตติ สตริง.
STDIN
ไม่ได้ใช้.
INPUT ไฟล์
ไม่
และพวกเรา ตัวแปร
ตัวแปรสภาพแวดล้อมต่อไปนี้จะส่งผลต่อการดำเนินการของ ชื่อฐาน:
ภาษา ระบุค่าเริ่มต้นสำหรับตัวแปรการทำให้เป็นสากลที่ไม่ได้ตั้งค่าหรือ
โมฆะ. (ดูปริมาณคำจำกัดความพื้นฐานของ POSIX.1-2008 Section 8.2,
สากล ตัวแปร เพื่อความเหนือกว่าของความเป็นสากล
ตัวแปรที่ใช้ในการกำหนดค่าของหมวดหมู่สถานที่)
LC_ALL หากตั้งค่าเป็นค่าสตริงที่ไม่ว่าง ให้แทนที่ค่าของค่าอื่นๆ ทั้งหมด
ตัวแปรความเป็นสากล
LC_CTYPE กำหนดสถานที่สำหรับการตีความลำดับไบต์ของข้อมูลข้อความ
เป็นอักขระ (เช่น ไบต์เดี่ยวเมื่อเทียบกับอักขระหลายไบต์ใน
ข้อโต้แย้ง)
LC_MESSAGES
กำหนดโลแคลที่ควรใช้เพื่อส่งผลต่อรูปแบบและเนื้อหาของ
ข้อความวินิจฉัยที่เขียนถึงข้อผิดพลาดมาตรฐาน
นศ กำหนดตำแหน่งของแค็ตตาล็อกข้อความสำหรับการประมวลผลของ LC_MESSAGES.
อะซิงโครนัส กิจกรรม
ผิดนัด
STDOUT
พื้นที่ ชื่อฐาน ยูทิลิตีต้องเขียนบรรทัดไปยังเอาต์พุตมาตรฐานในรูปแบบต่อไปนี้:
"%s\n", <ส่งผลให้ เชือก>
สแตเดอร์
ข้อผิดพลาดมาตรฐานจะใช้สำหรับข้อความวินิจฉัยเท่านั้น
เอาท์พุท ไฟล์
ไม่
ขยาย DESCRIPTION
ไม่
EXIT สถานภาพ
ค่าทางออกต่อไปนี้จะถูกส่งคืน:
0 สำเร็จลุล่วง
>0 เกิดข้อผิดพลาด
ผลกระทบที่เกิด OF ข้อผิดพลาด
ผิดนัด
พื้นที่ ดังต่อไปนี้ ส่วน เป็น ข้อมูล.
ใบสมัคร การใช้
ความหมายของ ชื่อพา ธ ระบุการทำงานที่กำหนดโดยการดำเนินการสำหรับชื่อพาธ
เริ่มจากสอง ตัวอักษร ดังนั้นการสมัครจะไม่เพิ่มโดยพลการ
อักขระที่จุดเริ่มต้นของชื่อพาธ เว้นแต่จะสามารถมั่นใจได้ว่ามี
มากกว่าหรือน้อยกว่าสองหรือพร้อมที่จะจัดการกับการดำเนินการที่กำหนดไว้
ผลที่ตามมา
ตัวอย่าง
ถ้าสตริง เชือก เป็นชื่อพาธที่ถูกต้อง:
$(ชื่อฐาน -- "เชือก")
สร้างชื่อไฟล์ที่สามารถใช้เปิดไฟล์ชื่อโดย เชือก ในไดเรกทอรี
ส่งคืนโดย:
$(นามสกุล -- "เชือก")
ถ้าสตริง เชือก ไม่ใช่ชื่อพาธที่ถูกต้อง ใช้อัลกอริธึมเดียวกัน แต่ผลลัพธ์
ไม่จำเป็นต้องเป็นชื่อไฟล์ที่ถูกต้อง NS ชื่อฐาน ยูทิลิตี้ไม่คาดว่าจะทำการตัดสินใด ๆ
เกี่ยวกับความถูกต้องของ เชือก เป็นชื่อพาธ; เพียงทำตามอัลกอริทึมที่ระบุถึง
สร้างสตริงผลลัพธ์
เชลล์สคริปต์ต่อไปนี้คอมไพล์ /usr/src/cmd/cat.c และย้ายเอาต์พุตไปยังไฟล์
ชื่อ แมว ในไดเร็กทอรีปัจจุบันเมื่อเรียกใช้ด้วยอาร์กิวเมนต์ /usr/src/cmd/แมว หรือกับ
อาร์กิวเมนต์ /usr/src/cmd/cat.c:
c99 -- "$(นามสกุล -- "$1")/$(ชื่อฐาน -- "$1" .c).c" &&
mv ออก "$(ชื่อฐาน -- "$1" .ค)"
หลักการและเหตุผล
พฤติกรรมของ ชื่อฐาน และ บอกฉัน ได้รับการประสานงานเพื่อให้เมื่อ เชือก เป็นไฟล์
ชื่อพาธ:
$(ชื่อฐาน -- "เชือก")
จะเป็นชื่อไฟล์ที่ถูกต้องสำหรับไฟล์ในไดเร็กทอรี:
$(นามสกุล -- "เชือก")
สิ่งนี้ใช้ไม่ได้กับยูทิลิตี้รุ่นข้อเสนอแรก ๆ เนื่องจากวิธีการนี้
การจัดการต่อท้ายที่ระบุ ตัวอักษร
ตั้งแต่นิยามของ ชื่อพา ธ ระบุการทำงานที่กำหนดโดยการดำเนินการสำหรับชื่อพาธ
เริ่มจากสอง ตัวอักษร POSIX.1-2008 เล่มนี้ระบุว่าคล้ายกัน
พฤติกรรมที่กำหนดการใช้งานสำหรับ ชื่อฐาน และ บอกฉัน สาธารณูปโภค.
อนาคต ลู่ทาง
ไม่
ใช้ basenameposix ออนไลน์โดยใช้บริการ onworks.net