Compare ways to move or copy Confluence pages
Shell for Confluence provides familiar commands such as ls, cd, find, tree, mv, cp, and rm. You can move multiple named pages within a space or into another space (a cross-space mv needs -y). Use several argv sources, * / ? in the last segment of each source path on mv / cp, or pipe paths from find (including -mtime / -prune or -name; at most 100 sources). ls -l shows last-update details; ls --format csv is the machine-readable listing. tree prints an ASCII page tree (-L / --maxdepth; default depth 3), and cp -r copies a page tree (max 200 pages; DEST may be in another space). label adds or removes labels in bulk, archive sends pages to Confluence native archive (Standard+), and attach find / du inventory attachments. less pages long listings.
On first open, the console shows Try tips for tree, find -mtime, ls --format csv, find -label, and archive -n, plus the line “Cross-space mv / cp — mv needs -y.”
When to use Shell
Section titled “When to use Shell”- You prefer commands such as
ls/ls -l/ls --format csv,cd,find(-mtime/-prune),tree, andmv. - You want to find or filter pages, then
mvorcpthem within a space or into another space (including pipes intogrep/head/tail/wc/sort, and intomv/cp/chmod). - You need to search page content in a page tree with
find … -exec grep PATTERN. - You want to label, archive, or trash stale pages found by
find -mtime(| label add,| archive -n,| rm -n; max 100 per run). - You want to see where large attachments are (
du -h,attach find -size +10M -ls). - You want tab completion (including command names and theme values), history,
^old^new, and short names viaalias/unalias(stored in this browser only). - You want to inspect or restore page versions with
checkout/restore. - You want to adjust explicit page restrictions via
chmod. It is not a space-permission admin UI or a bulk migrator. - Listing: Shell for Confluence (Kenputer). Free.
Recipes: Use cases.
Short product overview: Shell for Confluence intro
Copy pages or a page tree
Section titled “Copy pages or a page tree”To bulk copy pages, pass named sources, a glob, or find | cp — at most 100 sources per run. DEST may be in another space; plain cp does not need -y. cp -r copies a page tree of at most 200 pages (attachments and labels included) and requires -y. Shell does not copy spaces or folders, trees larger than 200 pages, a multi-select Bulk UI, or strings in titles and bodies.
When to use another method
Section titled “When to use another method”| Need | Path |
|---|---|
| A handful of pages | Native hierarchy drag, or page Move. |
| Title-pattern move, same space or another space (up to 100) | Shell: mv Draft* DEST or find -name PATTERN | mv DEST (preview with -n; add -y when DEST is in another space). |
| More than 100 pages | REST PUT /wiki/rest/api/content/{id} with ancestors: [{id: newParent}] and the next version number. Documented in Move multiple pages to another parent page. |
| Copy a page tree, same space or another space (up to 200 pages) | Shell: cp -r -n SRC DEST, then cp -r -y (attachments and labels included). |
| Copy a tree larger than 200 pages | Native Confluence copy, or a tree-copy app such as Copy Page Tree (named in that thread’s 2017 Atlassian reply). Not Shell. |
| Change title/body text or URLs | Find & Replace app (not Shell) |
| Archive stale pages (Standard+) | Shell: find -mtime +730 -prune | archive -n (one page at a time, max 100), or native archive UI. |
| Spreadsheet-style multi-select GUI | Pages Manager–class GUI, or native / REST |
| Search once, then bulk-move to another space | Shell: find … -prune | mv DEST -n, then the same with -y (needed because DEST is in another space; up to 100). Beyond that, an Easy Bulk–class workbench or REST |
What Shell does not do
Section titled “What Shell does not do”- A filtered multi-select Bulk panel UI for hundreds of pages (CLI globs, multi-source
mv/cp, andfind | mvare fine up to 100 sources;cp -rup to 200 pages). - A spreadsheet-style bulk move UI (cross-space moves run as
mv -yin the console). - Attachment upload or purge (list / find / trash / rename via
attachonly). mv,cp,rm,archive,label,chmod, andtouchrefuse Confluence folder paths (folders are read-only in Shell for now).
Canonical docs path: shell-for-confluence-cloud. Guide: https://documents.test-perspective.com/shell-for-confluence-cloud/guide-for-users/ FAQ: https://documents.test-perspective.com/shell-for-confluence-cloud/faq/
Feature requests (no promises): https://featureboard.netlify.app/product/shell-for-confluence