У меня в каталоге есть несколько файлов:

agent_datad.bin
_codecs_cn.cpython-34m.so
_Crypto.Cipher._ARC4.so
Crypto.Hash._RIPEMD160.so
...
other files

Как я могу удалить _ из начала каждого файла, который начинается с этого символа? Я хочу только удалить первый _ как некоторые файлы могут иметь подчеркивание в другой позиции. Однострочная команда была бы потрясающей.

Как упоминание, я использую CentOS 7, и использование mv не обязательно, но это то, что мне пришло в голову.

1 ответ1

0

Попробуйте эту однострочную строку (эхо показывает, что будет делать команда):

for name in *; do echo mv ${name} ${name##_} ; done

${name##_} возвращает переменную $ name без _ в начале переменной

Когда вы счастливы, удалите echo из команды.

Удачи!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .