copick mv
core
Move/rename copick objects by URI.
Usage
Description
Renames or relocates picks, meshes, and segmentations within a project by rewriting their URI. A single concrete source/target pair renames one object, while a glob or regex source pattern combined with a templated target moves many objects at once. Each source object is deleted only after a successful copy to its target.
Picks and meshes are addressed as object_name:user_id/session_id, and
segmentations append a voxel spacing as name:user_id/session_id@voxel_spacing.
For pattern-based moves the target URI may use placeholders that are filled in
from each matched source: {object_name}, {name}, {user_id},
{session_id}, and {voxel_spacing} (segmentations only).
For single-object moves the target URI should be concrete (no placeholders);
for pattern-based moves it must contain at least one placeholder. Use
--overwrite to replace existing target objects and --run to limit the
operation to a single run.
Arguments
| Argument | Description |
|---|---|
OBJECT_TYPE |
Type of object to move (picks, mesh, or segmentation). |
SOURCE_URI |
Source copick URI pattern (supports glob and regex). |
TARGET_URI |
Target copick URI (use placeholders for pattern-based moves). |
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
# Rename a single pick set
copick mv picks "ribosome:user1/session-001" "ribosome:user2/session-001" -c config.json
# Move all manual pick sessions to a backup user with a template
copick mv picks "ribosome:user1/manual-*" "ribosome:backup/{session_id}" -c config.json
# Rename matching segmentation sessions with a pattern
copick mv segmentation "membrane:user1/session-*@10.0" \
"membrane:user1/renamed-{session_id}@10.0" -c config.json