This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| generic_linux_commands [2026/03/25 12:59] – admin | generic_linux_commands [2026/03/25 14:01] (current) – admin | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| ===== RENAME ' | ===== RENAME ' | ||
| + | 1. Dry-run preview (generates rename list without executing): | ||
| < | < | ||
| - | find / | + | |
| - | | + | |
| - | | + | |
| - | if [ " | + | if echo " |
| - | | + | |
| - | echo " | + | |
| - | else | + | newname=$(echo |
| - | echo " | + | fi |
| - | fi | + | echo "$dir | ' |
| - | done | head -80 | + | done |
| </ | </ | ||
| + | |||
| + | 2. Execute renames: | ||
| + | < | ||
| + | find / | ||
| + | dir=$(dirname " | ||
| + | filename=$(basename " | ||
| + | # Special case: combo pack where ", The" belongs to a subtitle within the combo | ||
| + | if echo " | ||
| + | newname=$(echo " | ||
| + | else | ||
| + | newname=$(echo " | ||
| + | fi | ||
| + | if [ " | ||
| + | mv -- " | ||
| + | echo " | ||
| + | fi | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Key sed patterns: | ||
| + | |||
| + | - Standard: s/^\(.*\), The \(.*\)$/The \1 \2/ — captures everything before , The as \1 and everything after as \2, then prepends The | ||
| + | - Combo pack: s/\(+ \)\(.*\), The \(.*\)/ | ||
| + | |||
| + | ===== RENAME ' | ||
| + | Dry-run preview: | ||
| + | < | ||
| + | find / | ||
| + | dir=$(dirname " | ||
| + | filename=$(basename " | ||
| + | newname=$(echo " | ||
| + | echo "' | ||
| + | echo " | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Execute renames: | ||
| + | < | ||
| + | find / | ||
| + | dir=$(dirname " | ||
| + | filename=$(basename " | ||
| + | newname=$(echo " | ||
| + | if [ " | ||
| + | mv -- " | ||
| + | echo " | ||
| + | fi | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | Key sed pattern: | ||
| + | - s/^\(.*\), \(An\{0, | ||