Что-то вроде этого должно заставить вас изменить BASE
на любой нужный вам базовый путь.
#!/bin/bash
BASE="/tmp"
for file in *
do
nf=$(echo "$file" | sed 's|\\|/|g')
filename=$(basename "$nf")
path=$(dirname "$nf")
mkdir -p "$BASE/$path"
cp "$file" "$BASE/$path/$filename"
done
Я применил это в системе Linux, но я ожидаю, что в OSX она будет работать должным образом.