Change Text on Instantiated Objects Child

First of all, I’m quite new to Unity, so any help is appreciated. I’ve been surfing the web for hours, but couldn’t find a proper solution to this.
What I would like to do: Create 100 flat Boxes with numbers on them.

What I could’ve done so far: Creating 100 flat Boxes with a static numbers on them.

My code is:

public Transform Cubes;
//loop goes here
GameObject cube = Instantiate(Cubes, new Vector3(0,0,0), transform.rotation) as GameObject;

I have the Prefab as a Box, and a 3D Text is attached to it as a child.

How can I change the text of the Child 3D Text? And after creating them, how can I loop throught them? Is there an option to name the instances for later usage?

Thank you in advance!

Ok so to get the child you can either find that game object it is attached to using transform.Find() or better in this case just do

 cube.GetComponentInChildren<TextMesh>().text = "whatever";

To change the name of the cube just do cube.name = "yourNameHere"

EDIT Sorry forgot the loop through them bit!

Either store them in a list as you instantiate them, or give them a tag (you have to define it in the inspector first) and use GameObject.FindObjectsWithTag("yourTag") Or use the idea in this post