The UNIX and Linux Forums  

Go Back   В UNIX и Linux Форумы > Топ форумы > Shell программирование и сценарии
.
Google unix.com



Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь.

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
автоматическая ТДО XF файл с неизвестным именем tkrahn UNIX для чайников Вопросы И Ответы 3 07-11-2007 08:25 AM
Автоматическая загрузка в CSV-файл, используя скрипт FIGARO Shell программирование и сценарии 1 01-13-2007 08:53 PM
Файл увеличить chapmana UNIX для чайников Вопросы И Ответы 7 11-24-2006 09:54 AM
Автоматическая Копия файла в буфер обмена ilak1008 Shell программирование и сценарии 5 10-10-2006 12:43 PM
Unix автоматической передачи файлов tagem UNIX перспективных И опытных пользователей 4 11-14-2005 08:50 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 05-28-2007
Steiner steiner is offline
Зарегистрированный пользователь
  
 

Регистрация: Jul 2003
Место проведения: Hambach - Франция
Сообщений: 29
Автоматическое имя файла с увеличением

Здравствуйте,

Файл с именем c15a зарегистрирована на моем диске всего 10 минут.

Мне необходимо переименовать этот файл в действительности Дата и с автоматическим увеличением числа 5 цифр, так как: c15a.20070528.00001 и следующий файл будет: c15a.20070528.00002.

На следующий день так завтра пять цифр должен быть сброшен на 00001 так как на завтра: c15a.20070529.00001.

Я сделал скрипт с переименовывать с датой, но у меня есть проблемы с автоматическим увеличением числа.

Так вы можете мне помочь с этим увеличение пять цифр номера и автоматический сброс, когда день изменилась.

Таким образом, благодаря большой, свидания.
Old 05-28-2007
aigles's Avatar
aigles aigles is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Apr 2004
Расположение: Бордо, Франция
Сообщения: 1433
Вы можете попробовать что-то вроде:

Код:
filename=c15a

datestamp=$(date +%Y%m%d)
last_file=$(ls -1 $filename.$datestamp.* 2>/dev/null | tail -1)
if [ -z "$last_file" ]
then
  number=1
else
  number=$(( ${last_file##*.} + 1 ))
fi
new_filename=$(printf "%s.%s.%05.5d" "$filename" "$datestamp" "$number")

mv $filename $new_filename

Жан-Пьер.
Old 05-29-2007
lorcan lorcan is offline
Зарегистрированный пользователь
  
 

Регистрация: May 2007
Сообщений: 219
Удалено заявление ...

Последний раз редактировалось lorcan; на 05-29-2007 01:50 AM.. Основание: заявление было неверно wrt вопрос
Old 05-29-2007
ghostdog74 ghostdog74 is offline Forum Advisor  
Зарегистрированный пользователь
  
 

Регистрация: Sep 2006
Сообщений: 2557
Цитата:
Первоначально Послано lorcan
Aigles, лишь небольшая коррекция в ваш код,
Чтобы получить последние файла мы сортировать основанные на времени,

так что 4-ой строке должны были быть, как


Код:
last_file=$(ls -t1 $filename.$datestamp.* 2>/dev/null | tail -1)

Обычно, если они используются с хвостом -1, мы бы хотели LS-1tr вместо. Однако в данном конкретном случае, я думаю, потому, что файлы уже timestamped с рядом на спину, когда делаете Ls -1, ее до сих пор "отсортированных" по последний файл.
Old 05-29-2007
lorcan lorcan is offline
Зарегистрированный пользователь
  
 

Регистрация: May 2007
Сообщений: 219
Цитата:
Первоначально Послано ghostdog74
Обычно, если они используются с хвостом -1, мы бы хотели LS-1tr вместо. Однако в данном конкретном случае, я думаю, потому, что файлы уже timestamped с рядом на спину, когда делаете Ls -1, ее до сих пор "отсортированных" по последний файл.

Да, действительно Вы правильно. PLZ игнорировать мои предыдущие MSG
Old 05-29-2007
Steiner steiner is offline
Зарегистрированный пользователь
  
 

Регистрация: Jul 2003
Место проведения: Hambach - Франция
Сообщений: 29
Автоматическое расширение файла

Здравствуйте,

Спасибо за ваш быстрый ответ.

Только один вопрос: маленький ниже в C кодирования, не так ли?

new_filename \u003d $ (printf "% s.% s.% 05.5d" "$ имя_файла" "$ даты" "$ число")

То же в командной строке скрипта может быть лучше, потому что я не один C developper.

Ok спасибо много свидания.
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 01:35 PM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0