#!/bin/bash pushd () { command pushd "$@" > /dev/null } popd () { command popd "$@" > /dev/null } SourceRoot=/works/cvtt/md_archive/equity/alpaca_md.2 TargetRoot=/works/cvtt/md_archive/equity/alpaca_md.NEW mkdir -p ${TargetDir} unalias ls cd ${SourceRoot} for year in $(ls -d 2*) do echo $year pushd $year for letter in $(ls -d ?) do pushd ${letter} echo "${year}/${letter}" for symbol in $(ls -d ${letter}*) do pushd $symbol echo "${year}/${letter}/${symbol}/* --> ${letter}/${symbol}/${year}/" mkdir -p ${TargetRoot}/${letter}/${symbol}/${year} mv ${SourceRoot}/${year}/${letter}/${symbol}/* ${TargetRoot}/${letter}/${symbol}/${year}/ popd done popd done popd done