0

我为我的 .bashrc 创建了一个 git 存储库,我从本地机器和远程机器中提取它。我想为我的本地主机而不是我的远程主机运行一些命令。

4

3 回答 3

1

这对我有用:

HOSTNAME=$(hostname)
if [ ${HOSTNAME} == "ros-mbp.local" ]; then
  echo "host is local"
elif [ ${HOSTNAME} == "dev843.prn1.facebook.com" ]; then
  echo "host is remote"
else
  echo "host doesn't match."
fi
于 2013-03-05T04:43:00.793 回答
0

对于更通用的解决方案,其中:

  • 适用于 bash 和 sh
  • 支持file pattern matching主机名

你可以使用这个成语:

#!/bin/bash
HOST=`hostname`
case "$HOST" in
   # examples of prefix matches:
   host1*) echo this matches host1 ;;
   host2*) echo this matches host2 ;;
   # and so on...

   # if none matched you use the default '*' pattern
   # which matches everything else
   *)     echo none matched: hostname is $HOST ;;
esac
于 2013-03-05T04:52:53.897 回答
0

由于您特别询问.bashrc,我可以假设您正在使用bash吗?bash已经自动设置了参数HOSTNAME

于 2013-03-05T13:51:17.383 回答