Моє перше питання на цій stackexchange, і я впевнений, що буде більше, як я ризикую далі в світ того, що є Linux ...
Я маю for-loop в оболонці-скрипті, який пакет перейменує всі файли на підрядок (останній n символів) його початкового імені.
Це буде echo
кожна ітерація на новій лінії в кінцевому підсумку виробляє список всіх файлів, але як я можу зберегти це відлуння на одній / оновлюваній лінії, щоб він не створював цей (іноді великий) список?
echo "- Renaming file..."
for file in `find fldr -type f`
do
newf=$(echo $file | rev | cut -c -6 | rev)
mv -f $file fldr/$newpt
echo " * $file > $newf"
done
фактичний вихід ...
- Renaming file...
* file1a.txt > 1a.txt
* file2a.txt > 2a.txt
* file3a.txt > 3a.txt
* ...
бажаний результат ...
- Renaming file...
* file3a.txt > 3a.txt
Я хотів би, щоб один рядок завжди змінювався, щоб показувати лише поточний файл.
[БОНУС] Як я зможу відобразити n'th файл, який він перейменує?
- 3 files renamed...
* file3a.txt > 3a.txt
Де n - сукупна сума / кількість перейменованих файлів.
echo -ne "\r * $file > $newf
В іншому випадку ехо не буде інтерпретувати символи звільнення.