[英]How to export a function in fish shell
我正在將某些腳本從bash
移植到fish
shell,但無法訪問我的實用程序功能。
這是我在bash中的操作方法,首先在"$HOME/.my-posixrc"
聲明我的方法:
function configure_date_utilities() {
function today() {
to-lower "$(date '+%Y-%b-%d')"
}
function today-num() {
to-lower "$(date '+%Y-%m-%d')"
}
function now() {
to-lower "$(date '+%Y-%b-%d-%H:%M')"
}
}
然后獲取此文件:
source "$HOME/.my-posixrc"
所以我可以做:
$ today
2015-DEC-13
function configure_date_utilities
function today
to-lower (date '+%Y-%b-%d')
end
function today-num
to-lower (date '+%Y-%m-%d')
end
function now
to-lower (date '+%Y-%b-%d-%H:%M')
end
end
然后在~/.config/fish/config.fish
該文件:
source "$HOME/.my-posixrc"
但是找不到方法 :
$ today
當前未安裝“今天”程序。 您可以通過鍵入以下命令進行安裝:sudo apt-get install mhc-utils
如何“導出”函數,以便可以在提示符下訪問它們?
PS:我的dotfiles在github上可用 。
刪除外部函數或在文件中調用它。
在fish中,所有函數都是全局的,但是不會定義您的內部函數,因為它們的定義永遠不會運行。
所以:
function configure_date_utilities
function today
to-lower (date '+%Y-%b-%d')
end
function today-num
to-lower (date '+%Y-%m-%d')
end
function now
to-lower (date '+%Y-%b-%d-%H:%M')
end
end
configure_date_utilities
要么
function today
to-lower (date '+%Y-%b-%d')
end
function today-num
to-lower (date '+%Y-%m-%d')
end
function now
to-lower (date '+%Y-%b-%d-%H:%M')
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.