0
我使用兩個別名相同功能的說使用如何找到它的別名是
alias lsd=LSD
alias lsdr=LSD
function LSD {
}
現在我需要的功能檢查,如果LSD別名用於運行ls -ld或者LSDR使用運行ls - ldr的參數已通過。
我可以使用這些參數,但我想檢測函數中的別名,該別名是從哪個別名被調用的。
我使用兩個別名相同功能的說使用如何找到它的別名是
alias lsd=LSD
alias lsdr=LSD
function LSD {
}
現在我需要的功能檢查,如果LSD別名用於運行ls -ld或者LSDR使用運行ls - ldr的參數已通過。
我可以使用這些參數,但我想檢測函數中的別名,該別名是從哪個別名被調用的。
只需設置別名以包含附加參數以標識所使用的別名,並在函數內將參數從參數列表中移出即可。
function LSD
{
typeset version=${1}
shift
case ${version} in
1) echo "called as lsd" ;;
2) echo "called as lsdr" ;;
esac
echo "Other args = $*"
}
alias lsd="LSD 1"
alias lsdr="LSD 2"
您能否添加更多信息,導致一個別名在另一個別名上運行? – dood
你爲什麼這樣做? – 123
你可以使用參數。即別名lsd = LSD 1;別名lsdr = LSD 2; LSD(){if [「$ 1」-eq 1];然後回顯「lsd」;其他回聲「lsdr」; fi}' – Aserre