How can I reference a specific script inside a GameObject from another MonoBehaviour.

So the documentation here says: "You can also expose references to other objects to the inspector. Below you can drag a game object that contains the OtherScript on the target slot in the inspector."

Now what if I have several scripts of that type in that GameObject, only the first one seems to be referenced. Is there a way to pick one from the inspector ?

http://forum.unity3d.com/threads/97583-Referencing-a-script-on-a-GameObject-in-a-MonoBehaviour-in-another-GameObject

You can use GetComponents or GetComponentsInChildren to get an array of them. How you distinguish them is up to you.