У меня есть эта структура папок:
├── foo1
│ ├── bar1.txt
│ └── bar2.txt
├── foo2
│ ├── bar3.txt
│ └── bar4 with a space.txt
└── foo3
└── qux1
├── bar5.txt
└── bar6.txt
что я хотел бы добавить к этому, с подчеркиванием между каждым уровнем папки:
├── foo1_bar1.txt
├── foo1_bar2.txt
├── foo2_bar3.txt
├── foo2_bar4 with a space.txt
├── foo3_qux1.bar6.txt
└── foo3_qux1_bar5.txt
Я осмотрелся и не нашел ни одного решения, которое бы работало, в основном, я думаю, потому что у моей проблемы есть две особенности: внутри корневого каталога может быть несколько уровней, а также потому, что в некоторых файлах могут быть пробелы.
Есть идеи, как этого добиться в bash? Спасибо!
Редактировать : Запуск Глин Джекман предложил ответ, я получаю это:
Есть два подчеркивания для папки первого уровня. Любая идея, как избежать этого или просто переименовать его, чтобы это было только одно подчеркивание? Спасибо.
foo1__qux1_bar5.txt
, два подчеркивания на первом уровне папок. Пробовал возиться с вашей линией bash, но ничего не получалось. Может быть, мне нужно что-то добавить?