Bir senaryoyu başlatan SHELL'e bir takma ad “verebilirim”?


14

Belirli takma adları tanımlayan bir yardımcı program komut dosyası yazmaya çalışıyorum.
SHELL'im tcsh(değiştiremez).

Aşağıdakileri denedim

#!/bin/tcsh  
alias log 'less ~/logs/log.`date '+%Y%m%d'`''

Sonra böyle çalıştırın:

./myscript  
log

Aldığım çıktı: log: Command not found.

Doğal olarak böyle çalıştırırsam:

source myscript  
log

Herşey yolunda.

Belirtmeden yapmanın herhangi bir yolu var source ...mı?


Eğer koydun aliassizin de ~/.cshrcdosyaya?
qweet

@qweet - Bu benim amacım değil - Dinamik bir şey istedim.
RonK

Yanıtlar:


18

Yapamazsın. Betiğinizi çalıştırarak yeni bir kabuk yürütürsünüz. Takma adlar, üst süreç tarafından görülmez.

Belirtilen tek yol source, geçerli kabuk komut dosyası dosyanızı (yeni bir işlem başlatmadan) işlemek için kullanmaktır.


2
Teşekkür ederim - düşündüğüm bu - .alias'ım için bir takma ad ekleyeceğim source myscript- Tüm ekip üyeleri tarafından paylaşılabilecek kolay bir şey istedim - bir takma ad bunu yapacak.
RonK
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.