copick cp
core
Copy or duplicate copick objects by URI.
Usage
Description
Copies picks, meshes, or segmentations identified by copick URIs, either within a run or across runs. Both single-object copies and pattern-based batch copies are supported: a concrete TARGET_URI duplicates one object, while a glob/regex SOURCE_URI combined with a templated TARGET_URI copies many matching objects at once. Source objects are never modified, and existing targets are only replaced when --overwrite is given.
Picks and meshes are addressed as object_name:user_id/session_id; segmentations
add a voxel spacing as name:user_id/session_id@voxel_spacing. For pattern-based
copies, the TARGET_URI may use the placeholders {object_name}, {name},
{user_id}, {session_id}, and {voxel_spacing} (segmentations only), each filled
from the corresponding field of the matched source object.
Arguments
| Argument | Description |
|---|---|
OBJECT_TYPE |
Type of object to copy (picks, mesh, or segmentation). |
SOURCE_URI |
Source copick URI pattern (supports glob and regex). |
TARGET_URI |
Target copick URI (use template placeholders for pattern-based copies). |
Options
| Option | Type | Default | Description |
|---|---|---|---|
-c, --config |
path | — | Path to the configuration file. |
-r, --run |
text | — | Specific run name to operate on (default: all runs). |
--overwrite / --no-overwrite |
boolean flag | False |
Allow overwriting existing target objects. |
--workers, -w |
integer | 8 |
Number of parallel worker processes. |
--debug / --no-debug |
boolean flag | False |
Enable debug logging. |
Examples
# Create a backup copy of a single pick set
copick cp picks "ribosome:user1/session-001" "ribosome:backup/session-001" -c config.json
# Duplicate all manual picks to a backup user
copick cp picks "ribosome:user1/manual-*" "ribosome:backup/{session_id}" -c config.json
# Create test copies of segmentations across voxel spacing
copick cp segmentation "membrane:user1/final-*@10.0" "membrane:user1/test-{session_id}@10.0" -c config.json
# Copy picks to a different object name
copick cp picks "ribosome:user1/*" "ribosome_80s:user1/{session_id}" -c config.json