《Disney +》 迪士尼、Marvel、彼思、星球大戰…  荒野行動 × 七大罪聯名活動第2彈開跑!新年服裝與全新載具皮膚隆重登場!   靈感來自JRPG的廣闊MMO《Zenith》即將登陸PS VR   《Street Fighter V》夏季更新2021:過去、現在和未來   殺怪Roguelike遊戲《Curse of the Dead Gods》明天上市:7個遊戲提示不可不知   《Stranger Of Paradise Final Fantasy Origin》開發者專訪! 何謂「FF風格」與「Team NINJA風格」的融合?   「刃牙」新角色参戰!Puzzle & Dragons x Champion all stars 活動開始!   《魔鬼剋星:未來世》:為人氣系列作注入新活力   【速報】勇者鬥惡龍 III 重製版「勇者鬥惡龍 III HD-2D Remake」確定開發! 

Bash shell 列出自己定義的 Function

商業

自己寫了不少的 Shell script function 來使用,但是平常沒在記憶名字,常常忘記又寫了一次,在 Bash shell 要怎麼列出自己寫得 Function name 呢?

Bash shell 列出自己定義的 Function

Shell Script 的 Function 要怎麼全部列出來,然後列出自己寫的 Function,怎麼查看 Function 的詳細內容?

下述 declare 都可以用 typeset 取代(方便記憶用 declare = typeset)

列出所有 Function

  • $ declare -F

列出此 Function 的詳細內容(下述用 timestamp_to_date 來做範例,二選一即可)

  • $ declare -f timestamp_to_date
    timestamp_to_date ()
    {
        date +"%Y-%m-%d %H:%M:%S" --date="@$1"
    }
  • $ type timestamp_to_date
    timestamp_to_date 是一個函數
    timestamp_to_date ()
    {
        date +"%Y-%m-%d %H:%M:%S" --date="@$1"
    }

列出自己寫的所有 Function (下述都可以達成需求)

  • declare -F | grep -v "-f _"
  • set | grep " ()" | grep -v "^_"
  • 或者自己寫一個 list_function()
    function list_function() {
        declare -F | grep -v "-f _"
    }
Tsung

隨機商業新聞