Shell內(nèi)置命令、外部命令、別名、函數(shù)、保留關(guān)鍵字的優(yōu)先級

          在Shell中,有5種可調(diào)用的東西:別名(alias)、函數(shù)(function)、shell保留關(guān)鍵字、shell內(nèi)置命令、外部命令。

          如果它們同名了,那么優(yōu)先調(diào)用誰呢?可使用type -a cmd查看。
          # 內(nèi)置命令、別名、函數(shù)、外部命令 $ alias kill="echo haha" $ function kill()(echo hehe) $ type
          -a kill kill is aliased to `echo haha' # 1.別名kill kill is a function # 2.函數(shù)kill
          kill () { ( echo hehe ) } kill is a shell builtin # 3.內(nèi)置kill kill is
          /usr/bin/kill # 4.外部kill # 別名、函數(shù)、保留關(guān)鍵字、外部命令 $ alias time="echo haha" $ function
          time()(echo hehe) $ type -a time time is aliased to `echo haha' # 1.別名 time is
          a shell keyword # 2.保留關(guān)鍵字 time is a function # 3.函數(shù) time () { ( echo hehe ) }
          time is /usr/bin/time # 4.外部命令


          例如:
          # 調(diào)用外部命令time [root@me ~]$ command time echo haha [root@me ~]$ /usr/bin/time
          echo haha # 調(diào)用內(nèi)置命令printf [root@me ~]$ alias printf="echo hehe" [root@me ~]$
          printf hehe [root@me ~]$ builtin printf 'hello' hello
          此外,可以使用反斜線對命令轉(zhuǎn)義,使其跳過當(dāng)前最高的優(yōu)先級。但是,反斜線轉(zhuǎn)義的效果可能不會按照預(yù)料中順序的執(zhí)行,所以最好不要用反斜線轉(zhuǎn)義。
          $ \time echo haha

          友情鏈接
          ioDraw流程圖
          API參考文檔
          OK工具箱
          云服務(wù)器優(yōu)惠
          阿里云優(yōu)惠券
          騰訊云優(yōu)惠券
          京東云優(yōu)惠券
          站點(diǎn)信息
          問題反饋
          郵箱:[email protected]
          QQ群:637538335
          關(guān)注微信

                乖女的小奶水h公车痴汉 | 勾搭少妇在线观看 | 日本AAAA片毛片免费观蜜桃 | 欧美群交性XXXX狂野 | 黄色录像潘金莲 |