Add a GameObject in two GameObject with equal name.

Well... I need instance a GameObject(GO1) in others two GameObject(GO2,GO3) with name equal but when I add with " GameObject.Find("NameObject").transform;" the GO1 instance just in first, in GO2. So How do I instantiate the GO1 in GO3 too?

You could rename it afterwards:

var clone : GameObject;

clone = Instantiate(GO1, transform.position, transform.rotation);
clone.name = ...

Ok, so you want to instantiate N objects using one as the origin. That's what prefabs are for. And here's one manual guide to do exactly that.

So, instead of using `GameObject.Find` you just use a variable, though you could still use Find if you wish. I'm also taking the liberty to add efge's code below, to make sure the instantiated objects will have same name.

// Instantiates a prefab in a circle

var prefab : GameObject;
var numberOfObjects = 20;
var radius = 5;

function Start () {
    if (!prefab) prefab = GameObject.Find("GO1");
    for (var i = 0; i < numberOfObjects; i++) {
        var angle = i * Mathf.PI * 2 / numberOfObjects;
        var pos = Vector3 (Mathf.Cos(angle), 0, Mathf.Sin(angle)) * radius;
        var clone = Instantiate(prefab, pos, Quaternion.identity);
        clone.name = prefab.name;
    }
}