ฟังก์ชั่นที่ผู้ใช้กำหนด
โดยทั่วไปแล้วฟังก์ชันทุบตีจะถูกจัดเก็บอย่างถาวรในbashสคริปต์เริ่มต้น
- สคริปต์เริ่มทำงานทั้งระบบ:
/etc/profileสำหรับเชลล์ล็อกอินและ/etc/bashrcสำหรับเชลล์โต้ตอบ
- ผู้ใช้กำหนดสคริปต์เริ่มต้น:
~/.bash_profileสำหรับล็อกอินเชลล์และ~/.bashrcสำหรับเชลล์เชิงโต้ตอบ
- ข้อมูลเพิ่มเติมเกี่ยวกับเชลล์แบบโต้ตอบ / ล็อกอินสามารถพบได้ใน
manหน้าทุบตีในส่วน INVOCATION
ฟังก์ชันเชลล์ที่ผู้ใช้กำหนดจะถูกโหลดแบบไดนามิกในแฮช (หรือตารางการค้นหา) เมื่อเริ่มใช้งาน bash จากไฟล์ซอร์ส bash variable.cนิยามสำหรับตารางคือ:
/* The list of shell functions that the user has created, or that came from
the environment. */
HASH_TABLE *shell_functions = (HASH_TABLE *)NULL;
ฟังก์ชั่นที่ผู้ใช้กำหนดสามารถจดทะเบียนที่มีทุบตีdeclareคำสั่งหอยอื่น ๆ typesetยังคงใช้ ใน bash declareได้แทนที่typesetคำสั่ง
declare -f
ฟังก์ชันมีอยู่ในหน่วยความจำสำหรับอายุการใช้งานของ bash shell
ฟังก์ชั่นที่กำหนดโดยเชลล์ (builtin)
เหล่านี้เป็นฟังก์ชั่นทั่วไปเช่นecho, printf, และcd :พวกเขาจะรวบรวมไว้ในห้องสมุดที่เชื่อมโยงเข้ากับbashปฏิบัติการ การสร้างคำจำกัดความลงในไฟล์สั่งการช่วยประหยัดเวลาเมื่อเปรียบเทียบกับการโหลดคำจำกัดความภายนอก คำจำกัดความสำหรับฟังก์ชั่นเหล่านี้ (เก็บไว้ใน.defไฟล์ต้นฉบับซึ่งแยกวิเคราะห์ในซอร์ส C) จะถูกเก็บไว้ในbuiltinsไดเรกทอรีของซอร์ส bash
ที่มีประโยชน์กัน: help <command>สำหรับข้อมูลเกี่ยวกับการใช้งานคำสั่งเชลล์ เช่น
help # list all builtins
help declare # info and options for declare
help -m declare # gives man style information for declare
cd is a shell builtinฉันได้รับ ดูหน้า man สำหรับ shell ของคุณ (zsh?)