Я успешно выполнил следующий сценарий:
#!/bin/sh
for folder in $(ls $1)
do
for file in $(ls ${folder})
do
mv ${folder}/${file} $1/${folder}_${file}
done
rmdir ${folder}
done
-121--121261-
pax -rws'|/|_|g' folder*/ .
... будет работать до тех пор, пока нет пути перекрывать имена файлов. Чтобы сделать это более безопасно, воспользуйтесь опцией ссылки -l
и скопируйте дерево на другой путь, а затем проверьте новое дерево перед удалением старого.
-121--121260-
Посмотрите на GNU datamash , который можно использовать как datamash transpose
.
Будущая версия также будет поддерживать перекрестную табуляцию (сводные таблицы)