Я должен сделать это с find
команда. Теперь у меня есть это:
sudo find /home/jesus/ -type d -exec touch {}/folder.txt \;
Я хочу ту внутреннюю часть, каждый каталог создается файл, который запускается с того же имени как каталог и добавляет имя folder.txt
если я выполняю свою команду, она создает файлы с корректными именами, но не в каждом каталоге
В команде find
используйте -execdir
вместо -exec
, поэтому команда touch
будет выполнена в каталоге, где find
нашел совпадение. Используйте
find /path/to/directory -type d -execdir touch "{}"/folder.txt \;
или
find /path/to/directory -type d -execdir touch "{}"/"{}"folder.txt \;
в зависимости от желаемого имени файла. Команда, которую вы использовали, не производит имя файла, которое вы описали в своем вопросе, поэтому мне не совсем понятно, что вам здесь нужно, но вы можете изменить эти примеры для удовлетворения ваших потребностей. Первый пример соответствует команде, которую вы использовали, второй пример соответствует вашему описанию.