簡體   English   中英

有沒有一種在Linux中存儲查詢公式的方法?

[英]Is there a way of storing an query formula in Linux?

Linux可以存儲函數,可以使用function系統輕松地調用它們。 如果我想編寫多個if語句,但是應該使用相同的推理,可以這樣做嗎? 例如:

if [ x == 1 ]
then
  ...
fi

如果我需要對多個公式使用x == 1並全部改變,那么塊公式可以容納該公式,這樣我只需要進行一次修改即可,而無需全部修改?

您可以將邏輯包裝在一個函數中,並將該函數用作if的條件:

my_check() {
    [ "$x" -eq 1 ]
}

if my_check
then
    echo yes
else
    echo no
fi

這是利用Shell函數的退出狀態是最后執行的命令的退出狀態的優勢。 因此,如果“ $ x”等於1,則my_check的返回狀態將為0 (即成功),然后您將進入主分支。 否則,退出狀態將為1 (即失敗),然后您將進入替代分支。

您可以具有多種功能,每種功能一種:

check_a() {
    [ "$x" -eq 1 ]
}

check_b() {
    [ "$x" -eq 2 ]
}

check_c() {
    [ "$y" -eq 1 ]
}

if check_a && check_c
then
    echo "a and c are true"
elif check_b && check_c
then
    ...
elif check_c
then
    ...
else
    ...
fi

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM