Camera switches upon Insatiate

Hi, I have a FPS game with the camera (camera1) that follows my player movement. In my game I have prefabs with their own camera (camera2 and camera3). When I instantiate these prefabs, the game automatically switches to their camera. How do I keep this from happening and keep the main camera (camera1) on until I tell it to switch cameras. Below is my switch camera script that works, but doesn’t stop the cameras from being switched automatically when I instantiate the prefabs. MAybe I shouldn’t have the cameras attached to the prefabs?

public class CamControl : MonoBehaviour {

void Update () {

	if(Input.GetKey("1")){
		Debug.Log("Using Camera One"); 
		camSwap(1);
	}

	if(Input.GetKey("2")){
		Debug.Log("Using Camera Two");
		camSwap(2);
	}
		
	if(Input.GetKey("3")){
		Debug.Log("Using Camera Three");
		camSwap(3);	
	}

}

void camSwap(int currentCam){ 
	
	GameObject[] cameras = GameObject.FindGameObjectsWithTag("cam");
	foreach (GameObject cams in cameras){
		
		Camera theCam = cams.GetComponent<Camera>() as Camera;
		theCam.enabled = false;	
	}   

	
	string oneToUse = "Camera"+currentCam;
	Camera usedCam = GameObject.Find(oneToUse).GetComponent<Camera>() as Camera;
	usedCam.enabled = true;	
	
}

}

In your scripts for the objects that have the secodary camera components, you need to disable the camera components in Start or Awake.

Its not that one is replacing the other. its that, without them disabled, they are ALL rendering in top of each other.