Bash kılavuzundan
Takma adların tanımı ve kullanımı ile ilgili kurallar biraz kafa karıştırıcıdır. Bash, o satırdaki komutlardan herhangi birini yürütmeden önce her zaman en az bir tam satır okur. Takma adlar, bir komut yürütüldüğünde değil, okunduğunda genişletilir. Bu nedenle, başka bir komutla aynı satırda görünen bir diğer ad tanımı, bir sonraki girdi satırı okunana kadar etkili olmaz. Bu satırdaki diğer ad tanımını izleyen komutlar yeni diğer addan etkilenmez. Bu davranış, işlevler yürütüldüğünde de bir sorundur. Diğer ad, işlev yürütüldüğünde değil, işlev tanımı okunduğunda genişletilir , çünkü işlev tanımının kendisi bileşik bir komuttur. Sonuç olarak, Bir işlevde tanımlanan takma adlar, bu işlev yürütülene kadar kullanılamaz . Güvende olmak için, her zaman diğer ad tanımlarını ayrı bir satıra yerleştirin ve bileşik komutlarında diğer ad kullanmayın.
İki cümle, "İşlev yürütüldüğünde değil, işlev tanımı okunduğunda diğer adlar genişletilir" ve "işlevde tanımlanmış diğer adlar, bu işlev yürütülene kadar kullanılamaz" ifadelerinin birbirine aykırı olduğu görülmektedir.
Sırasıyla ne anlama geldiğini açıklayabilir misiniz?
.bashrc
üstteki dosyalarda takma adlarla karşılaştım .