Как переименовать группу файлов с тем, что выглядит как путь к файлу Windows в их именах

В вашем ~/.profile вы найдете эти строки:

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

Именно здесь, если существует как каталог, ~/bin добавляется в ваш PATH.

8
задан 24 August 2017 в 08:28

9 ответов

Я просто удалил все до последней косой черты с помощью rename

$ rename -n 's/.*\\//' G*
rename(G:some\really\long\file\path\then\the\file_name.mov, file_name.mov)
rename(G:some\really\long\file\path\then\the\filename.txt, filename.txt)
rename(G:some\really\long\file\path\then\the\name1.jpg, name1.jpg)
rename(G:some\really\long\file\path\then\the\name2.png, name2.png)

Удалил -n после тестирования, чтобы фактически переименовать файлы.

Примечания

-n ничего не делают, просто напечатайте то, что будет изменено. s/old/new замените old на new .* любым числом любых символов \\. Первая обратная косая черта - это выход из второй. Поскольку регулярное выражение является жадным, это выражение .*\\ также употребляет все предыдущие обратные косые черты. Поскольку последние два разделителя // пусты, все, что соответствует в поисковой части, удаляется
18
ответ дан 22 May 2018 в 19:07
  • 1
    Мне просто нужна первая строка, или мне нужно сделать это для каждого файла? – kingcobra1986 24 August 2017 в 08:25
  • 2
    вам просто нужна первая строка @ kingcobra1986, остальные - результат. * соответствует всем файлам, но позвольте мне изменить это на G* - done - так что теперь он соответствует всем файлам, начинающимся с G в текущем каталоге, и будет работать на них все сразу. Если они находятся в нескольких каталогах, мы можем заниматься этим также различными способами – Zanna 24 August 2017 в 08:27
  • 3
    Это сработало. Можете ли вы объяснить, что именно происходит в этой строке? – kingcobra1986 24 August 2017 в 08:46
  • 4
    @ kingcobra1986 извините, я добавил заметки. Надеюсь, это ясно, если нет, пожалуйста, не стесняйтесь просить больше! – Zanna 24 August 2017 в 08:52
  • 5
    Ха, мне нравится идея использовать .*\\ из-за жадного .* – Ziazis 24 August 2017 в 09:57

Я просто удалил все до последней косой черты с помощью rename

$ rename -n 's/.*\\//' G* rename(G:some\really\long\file\path\then\the\file_name.mov, file_name.mov) rename(G:some\really\long\file\path\then\the\filename.txt, filename.txt) rename(G:some\really\long\file\path\then\the\name1.jpg, name1.jpg) rename(G:some\really\long\file\path\then\the\name2.png, name2.png)

Удалил -n после тестирования, чтобы фактически переименовать файлы.

Примечания

-n ничего не делают, просто напечатайте то, что будет изменено. s/old/new замените old на new .* любым числом любых символов \\. Первая обратная косая черта - это выход из второй. Поскольку регулярное выражение является жадным, это выражение .*\\ также употребляет все предыдущие обратные косые черты. Поскольку последние два разделителя // пусты, все, что соответствует в поисковой части, удаляется
18
ответ дан 18 July 2018 в 08:00

Я просто удалил все до последней косой черты с помощью rename

$ rename -n 's/.*\\//' G* rename(G:some\really\long\file\path\then\the\file_name.mov, file_name.mov) rename(G:some\really\long\file\path\then\the\filename.txt, filename.txt) rename(G:some\really\long\file\path\then\the\name1.jpg, name1.jpg) rename(G:some\really\long\file\path\then\the\name2.png, name2.png)

Удалил -n после тестирования, чтобы фактически переименовать файлы.

Примечания

-n ничего не делают, просто напечатайте то, что будет изменено. s/old/new замените old на new .* любым числом любых символов \\. Первая обратная косая черта - это выход из второй. Поскольку регулярное выражение является жадным, это выражение .*\\ также употребляет все предыдущие обратные косые черты. Поскольку последние два разделителя // пусты, все, что соответствует в поисковой части, удаляется
18
ответ дан 24 July 2018 в 18:57

Вы можете сделать это в чистом bash, используя расширение параметра оболочки.

${file##*\\} (префикс cut-up-last-prefix) разделяет все с начала имени файла до последнего \.

for file in *; do
    mv -v "$file" "${file##*\\}";
done

Результаты переименования:

‘G:some\\really\\long\\file\\path\\then\\the\\file_name.mov’ -> ‘file_name.mov’
‘G:some\\really\\long\\file\\path\\then\\the\\filename.txt’ -> ‘filename.txt’
‘G:some\\really\\long\\file\\path\\then\\the\\name1.jpg’ -> ‘name1.jpg’
‘G:some\\really\\long\\file\\path\\then\\the\\name2.png’ -> ‘name2.png’
8
ответ дан 22 May 2018 в 19:07

Если вы ищете GUI-решения, есть много переименованных приложений. Я бы предложил Thunar, который является файловым менеджером по умолчанию для Xfce. Он поставляется с удобным инструментом переименования. Вы можете установить Thunar, выполнив следующую команду в Terminal:

sudo apt-get install thunar

Вы, вероятно, сможете установить и из Ubuntu Software.

Как использовать утилиту [!d4 ] После того, как вы установили Thunar, запустите утилиту Bulk Rename. Нажмите на значок + и добавьте файлы, которые вы хотите переименовать. Нажмите на раскрывающийся список чуть ниже списка выбранных файлов и выберите Search & amp; Заменить. В поле «Поиск:» введите G:some\really\long\file\path\then\the\ (часть, которую вы хотите избавиться), оставьте поле «Заменить с:» пустым. Вы должны увидеть предварительный просмотр изменений в столбце «Новое имя». Чтобы применить изменения, нажмите кнопку «Переименовать файлы».

Помимо Search & amp; Заменить эту утилиту поддерживает следующие действия:

Вставить дату / время Вставить / перезаписать нумерацию Удалить символы Верхний / нижний регистр

6
ответ дан 22 May 2018 в 19:07
  • 1
    нет ли там для наутилуса (я думаю, что есть!)? Похоже, слишком сложно использовать для этого установку нового файлового браузера. – Zanna 24 August 2017 в 08:26
  • 2
    @Zanna В v3.22 есть один, но я думаю, что все еще недоступно в репозиториях Ubuntu. – pomsky 24 August 2017 в 08:28
  • 3
    Thunar довольно удобен и, похоже, хорошо сосуществует с другими файловыми браузерами, поэтому я считаю целесообразным установить его для этой цели. Но можете ли вы расширить этот ответ с объяснением , как выполнить массовое переименование в Thunar? – Eliah Kagan 24 August 2017 в 15:57
  • 4
    @ EliahKagan, и он легкий – pomsky 24 August 2017 в 17:01
  • 5
    Красиво сделано, теперь я могу повышать (у меня есть Xubuntu, я могу проверить его тоже :)) – Zanna 24 August 2017 в 18:27

Вы можете сделать это в чистом bash, используя расширение параметра оболочки.

${file##*\\} (префикс cut-up-last-prefix) удаляет все с начала имени файла до последнего \.

for file in *; do mv -v "$file" "${file##*\\}"; done

Результаты переименования:

‘G:some\\really\\long\\file\\path\\then\\the\\file_name.mov’ -> ‘file_name.mov’ ‘G:some\\really\\long\\file\\path\\then\\the\\filename.txt’ -> ‘filename.txt’ ‘G:some\\really\\long\\file\\path\\then\\the\\name1.jpg’ -> ‘name1.jpg’ ‘G:some\\really\\long\\file\\path\\then\\the\\name2.png’ -> ‘name2.png’
9
ответ дан 18 July 2018 в 08:00

Если вы ищете GUI-решения, есть много переименованных приложений. Я бы предложил Thunar, который является файловым менеджером по умолчанию для Xfce. Он поставляется с удобным инструментом переименования. Вы можете установить Thunar, выполнив следующую команду в Terminal:

sudo apt-get install thunar

Вы, вероятно, сможете установить и из Ubuntu Software.

Как использовать утилиту

После того, как вы установили Thunar, запустите утилиту Bulk Rename. Нажмите на значок + и добавьте файлы, которые вы хотите переименовать. Нажмите на раскрывающийся список чуть ниже списка выбранных файлов и выберите Search & amp; Заменить. В поле «Поиск:» введите G:some\really\long\file\path\then\the\ (часть, которую вы хотите избавиться), оставьте поле «Заменить с:» пустым. Вы должны увидеть предварительный просмотр изменений в столбце «Новое имя». Чтобы применить изменения, нажмите кнопку «Переименовать файлы».

Помимо Search & amp; Заменить эту утилиту поддерживает следующие действия:

Вставить дату / время Вставить / перезаписать нумерацию Удалить символы Верхний / нижний регистр
6
ответ дан 18 July 2018 в 08:00

Вы можете сделать это в чистом bash, используя расширение параметра оболочки.

${file##*\\} (префикс cut-up-last-prefix) удаляет все с начала имени файла до последнего \.

for file in *; do mv -v "$file" "${file##*\\}"; done

Результаты переименования:

‘G:some\\really\\long\\file\\path\\then\\the\\file_name.mov’ -> ‘file_name.mov’ ‘G:some\\really\\long\\file\\path\\then\\the\\filename.txt’ -> ‘filename.txt’ ‘G:some\\really\\long\\file\\path\\then\\the\\name1.jpg’ -> ‘name1.jpg’ ‘G:some\\really\\long\\file\\path\\then\\the\\name2.png’ -> ‘name2.png’
9
ответ дан 24 July 2018 в 18:57

Если вы ищете GUI-решения, есть много переименованных приложений. Я бы предложил Thunar, который является файловым менеджером по умолчанию для Xfce. Он поставляется с удобным инструментом переименования. Вы можете установить Thunar, выполнив следующую команду в Terminal:

sudo apt-get install thunar

Вы, вероятно, сможете установить и из Ubuntu Software.

Как использовать утилиту

После того, как вы установили Thunar, запустите утилиту Bulk Rename. Нажмите на значок + и добавьте файлы, которые вы хотите переименовать. Нажмите на раскрывающийся список чуть ниже списка выбранных файлов и выберите Search & amp; Заменить. В поле «Поиск:» введите G:some\really\long\file\path\then\the\ (часть, которую вы хотите избавиться), оставьте поле «Заменить с:» пустым. Вы должны увидеть предварительный просмотр изменений в столбце «Новое имя». Чтобы применить изменения, нажмите кнопку «Переименовать файлы».

Помимо Search & amp; Заменить эту утилиту поддерживает следующие действия:

Вставить дату / время Вставить / перезаписать нумерацию Удалить символы Верхний / нижний регистр
6
ответ дан 24 July 2018 в 18:57
  • 1
    нет ли там для наутилуса (я думаю, что есть!)? Похоже, слишком сложно использовать для этого установку нового файлового браузера. – Zanna 24 August 2017 в 08:26
  • 2
    @Zanna В v3.22 есть один, но я думаю, что все еще недоступно в репозиториях Ubuntu. – pomsky 24 August 2017 в 08:28
  • 3
    Thunar довольно удобен и, похоже, хорошо сосуществует с другими файловыми браузерами, поэтому я считаю целесообразным установить его для этой цели. Но можете ли вы расширить этот ответ с объяснением , как выполнить массовое переименование в Thunar? – Eliah Kagan 24 August 2017 в 15:57
  • 4
    @ EliahKagan, и он легкий – pomsky 24 August 2017 в 17:01
  • 5
    Красиво сделано, теперь я могу повышать (у меня есть Xubuntu, я могу проверить его тоже :)) – Zanna 24 August 2017 в 18:27

Другие вопросы по тегам:

Похожие вопросы: