Как я могу переименовать каталоги со странными именами, не вводя их полных имен?
У меня есть 8 папок с очень длинными папками, и я получил эти папки только по этому пути / home / user / Downloads / - Is есть какая-нибудь команда, чтобы получить каждый файл {* .txt} из всех папок и переместить их в другой каталог?
Если я переписал ваш вопрос должным образом на основе вашего комментария, то
find /home/user/Downloads -type f -name \*.txt -print0 | \
xargs -0 -I '{}' mv '{}' nice-directory
будет надежно выполнять то, что вы просите.
Вы можете просто:
mv firstCoupleLetters[tab] newDir[enter]
и полагаться на автозаполнение, чтобы заполнить оригинальное имя каталога, переименовав его во что-то более короткое / более полезное.
Чтобы переименовать каталог, например horrible *[name]* with$weird <characters> \\in it" you can use wildcards, for example, if you have only one directory with
, странный в названии
mv "*weird*" a-regular-named-directory
, где {"} важны. В противном случае вы можете использовать
ls --hide-control-chars
, что даст вам список с нечетными символами, замененными на ?
, который затем является шаблоном оболочки, который вы можете затем mv.