Я бы хотел использовать Sed, чтобы найти в файле template.php фрагмент временной метки unix имени JS-файла и заменить его текущей меткой времени. Старая временная метка будет меняться, поэтому мне нужно, чтобы регулярное выражение соответствовало числу.Использование Sed для замены старой метки времени текущей
Вот что я до сих пор:
TimPeterson$ current_timestamp=date +%s
TimPeterson$ sed -i "" "s/myJS-[0-9]*\([0-9]\+\).js/myJS-$current_timestamp.js/" template.php
Просто чтобы быть ясно, о проблеме, что мне нужно, чтобы соответствовать в имени файла JS выглядит примерно так (где номер детали переменно):
myJS-1361297970.js
Однако, [0-9]*\([0-9]\+\)
не подходит.
извините, но вы должны что-то еще делать b/c, ваш код не работает для меня. Я просто скопировал все, что действительно смутило. Ваш код заменяет 'myJS-1361297970.js' текущей меткой времени, то есть' myJS-1361318815.js' (обратите внимание на разницу). –
Прошу прощения, я не понимаю, в чем проблема. В вашем вопросе вы говорите, что хотите, чтобы старая временная метка части имени файла была заменена новой меткой времени. Это то, что делает этот код. –
вы можете предоставить полный рабочий сценарий, который включает в себя гипотетическое содержимое файла, которое необходимо заменить? –