Copy (Data Management)

Summary

Makes a copy of the input data.

Usage

  • If a feature class is copied to a feature dataset, the spatial reference of the feature class and the feature dataset must match; otherwise, the tool will fail.

  • Any data dependent on the input is also copied. For example, copying a feature class or table that is part of a relationship class also copies the relationship class. The same applies to a feature class that has feature-linked annotation, domains, subtypes, and indices—all are copied along with the feature class. Copying geometric networks, network datasets, and topologies also copies the participating feature classes.

  • The Copy tool does not copy layers, since a layer is only a reference to a feature class.

  • Copying a mosaic dataset copies the mosaic dataset to the designated location; the images referenced by the mosaic dataset are not copied.

  • The Copy tool does not support .mrf image format. To copy an .mrf file, use the Copy Raster tool.

  • When the input has associated data, the Associated Data parameter is displayed where the associated output data's name and config keyword can be controlled.

Syntax

arcpy.management.Copy(in_data, out_data, {data_type}, {associated_data})
ParameterExplanationData Type
in_data

The data to be copied.

Data Element
out_data

The location and name of the output data. The file name extension of the output data must match the extension of the input data. For example, if you are copying a file geodatabase, your output data element must have .gdb as a suffix.

Data Element
data_type
(Optional)

The type of the data on disk to be copied. This is only necessary when the input data is in a geodatabase and naming conflicts exist, for example, if the geodatabase contains a feature dataset and a feature class with the same name. In this case, the data type is used to clarify which dataset you want to copy.

String
associated_data
[[from_name, data_type, to_name, config_keyword],...]
(Optional)

When the input has associated data, this parameter can be used to control the associated output data's name and config keyword.

  • from_name—Data associated with the input data, which will also be copied.
  • data_type—The type of the data on disk to be copied. The only time you need to provide a value is when a geodatabase contains a feature dataset and a feature class with the same name. In this case, you need to select the data type, FeatureDataset or FeatureClass, of the item you want to copy.
  • config_keyword—The geodatabase storage parameters (configuration).

The from_name and to_name column names will be identical if the to_name is not already used in out_data. If a name already exists in the out_data, a unique to_name will be created by appending an underscore plus a number, _2.

Value Table

Code sample

Copy example 1 (Python window)

The following Python window script demonstrates how to use the Copy function in immediate mode.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.Copy_management("majorrds.shp", "C:/output/majorrdsCopy.shp")
Copy example 2 (stand-alone script)

The following Python script demonstrates how to use the Copy function in a stand-alone script.

# Name: Copy_Example2.py
# Description: Copy major roads dataset to preserve the original data

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = "C:/data"

# Set local variables
in_data =  "majorrds.shp"
out_data = "C:/output/majorrdsCopy.shp"

# Execute Copy
arcpy.Copy_management(in_data, out_data)
Copy example 3 (stand-alone script)

The following Python script demonstrates how to use the associated_data parameter on the Copy function.

# Name: Copy_Example3.py
# Description: Copy a feature dataset and specify associated_data

# Import system modules
import arcpy

# the input is a feature dataset containing 3 feature classes: lakes, cities, rivers
in_data =  "C:/data/proj.gdb/mexico" 
out_data = "C:/data/proj.sde/mexico"

# Rename each feature class during the copy operation using the associated_data parameter
arcpy.Copy_management(in_data, out_data, associated_data=";".join(["lakes FeatureClass mexico_lakes #",
                                                                   "cities FeatureClass mexico_cities #",
                                                                   "rivers FeatureClass mexico_rivers #"
                                                                   ]))

Licensing information

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

Related topics