ฟังก์ชั่นที่ผู้ใช้กำหนด
โดยทั่วไปแล้วฟังก์ชันทุบตีจะถูกจัดเก็บอย่างถาวรใน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?)