Skip to content

Move selected Confluence pages to another parent

You want to move selected Confluence pages under another parent — for example after listing stale pages or matching titles — without a migration project.

Shell for Confluence Cloud 3.6.0 can do that inside one space, for up to 100 pages per run. Find pages by name or last update, preview the move, then change their parent. It is not a cross-space bulk migrator, a label bulk editor, or a find-and-replace tool.

Open the Cloud console, then cd into the space you care about.

Watch on YouTube: youtu.be/fVvS6cs3VMM

Watch on YouTube: youtu.be/KcRQNH1UTg4

$ cd YourSpace
$ find . -name '*2023*'
$ find ./Projects -mtime +365 -prune
$ find ./Projects -mtime +365 -prune | head 20

find -name matches titles. find -mtime filters by last update (content version when), not created date. Prefer -prune before a later move so you keep top-most matches and do not flatten parents beside children.

2. Preview, then move to another parent (same space, max 100)

Section titled “2. Preview, then move to another parent (same space, max 100)”
$ mkdir ./Archive
$ find . -name '*2023*' | mv -n ./Archive
$ find ./Projects -mtime +365 -prune | head 100 | mv -n ./Archive
$ find ./Projects -mtime +365 -prune | head 100 | mv ./Archive
$ mv pageA pageB pageC ./Archive

mv takes named paths, globs, or paths piped from find. An existing destination becomes the new parent. Preview with -n / --dry-run, then drop it when the preview looks right. At most 100 sources per run — split larger sets and run again.

  • Not cross-space. Moves stay in the same space.
  • Not label bulk. Shell does not set or clear labels in bulk.
  • Not find-and-replace. It does not rewrite page body text or titles in place (rename is a separate mv of one page).