Linux

Howto:命令/工具能力檢查

  • March 4, 2013

在開發應該在各種 unix/linux 衍生產品上執行的 shell 腳本時,我有時會遇到一些問題,即與其他系統相比,必須以不同的方式呼叫某些工具。例如,如果參數不同。我想知道解決這個問題的最佳方法是什麼。

我應該使用uname檢查作業系統名稱並依靠它以不同的方式執行工具,還是有任何“更好”的方式,某種“能力”檢查 shell 命令和工具?

所討論的系統例如 Linux、Mac OS X、Solaris 和 Irix——在工具和 shell 命令的能力方面都完全不同。

啊,shell腳本的可移植性,好玩!

是的,uname檢查$SHELL是最簡單的方法(也是我能想到的唯一可移植的方法)。

查看您正在使用的發行版的最簡單方法是檢查 /etc/issue

~$ cat /etc/issue
Debian GNU/Linux 6.0 \n \l

~$ cat /etc/issue
CentOS release 5.8 (Final)
Kernel \r on an \m

~$ cat /etc/issue
Ubuntu 12.04.2 LTS \n \l

引用自:https://serverfault.com/questions/472982