Автор Гілка: Потрібен такий скрипт...  (Прочитано 3598 раз)

Відсутній v.2.1

  • Письменник
  • *****
  • дописів: 639
  • Карма: +0/-0
Потрібен скрипт, в який можна ввести довільне літеро-цифрове значення і вказати які числа збільшувати на +1 до певної кількості та вивести всі нові значення.
Наприклад site09600001df.com
Потрібно отримати  site09600002df.com
і так далі, до site09601000df.com

Буду дуже вдячний, і в знак цього відішлю вам поповнення на ваш мобільний на 40 гривень.
« Змінено: 2012-08-03 18:44:14 від vitre »

Відсутній kisil

  • Графоман
  • ****
  • дописів: 353
  • Карма: +0/-0
  • Toruble in Windows reboot, toruble in Unix be root
    • About me
Re: Потрібен такий скрипт...
« Відповідей #1 : 2012-08-03 22:14:42 »
А куди вивести нові значення??


Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Потрібен такий скрипт...
« Відповідей #3 : 2012-08-03 23:07:43 »
Код: Bash
  1. perl -e 'my ( $line, $iter ) = @ARGV; for ( my $i = 0; $i < $iter; $i ++ ) { $_ = $line; s/(\d+)/$1+$i/eg; print "$_\n" }' site9600001df.com 10

Код: Bash
  1. for i in {1..10}; do printf "site960%04udf.com\n" "$i"; done
« Змінено: 2012-08-03 23:14:59 від ISBear »

Відсутній tech

  • Письменник
  • *****
  • дописів: 586
  • Карма: +1/-0
  • Гигик
Re: Потрібен такий скрипт...
« Відповідей #4 : 2012-08-03 23:08:14 »
#!/bin/bash

usage="boostnum [-b <text before>] [-a <text after>] number [-i <increase by>]"

while getopts ":a:b:i:" opt; do
    case $opt in
        a )
            after="$OPTARG";;
        b )
            before="$OPTARG";;
        i )
            increase=$OPTARG;;
        \? )
            echo $usage
            exit 1;;
    esac
done

shift $(($OPTIND - 1))

if [ -z "$@" ]; then
    echo $usage
    exit 1
fi

number=$1
max_value=$(($number + increase + 1))

while [[ $number -lt $max_value ]]; do
    echo $before$((number++))$after
done

Відсутній peinguin

  • Літератор
  • ******
  • дописів: 1419
  • Карма: +0/-0
Re: Потрібен такий скрипт...
« Відповідей #5 : 2012-08-03 23:13:56 »
perl -e 'my ( $line, $iter ) = @ARGV; for ( my $i = 0; $i < $iter; $i ++ ) { $_ = $line; s/(\d+)/$1+$i/eg; print "$_\n" }' site9600001df.com 10

for i in {1..10}; do printf "site960%04udf.com\n" "$i"; done
О, Великий.

Відсутній v.2.1

  • Письменник
  • *****
  • дописів: 639
  • Карма: +0/-0
Re: Потрібен такий скрипт...
« Відповідей #6 : 2012-08-04 14:57:22 »
Дуже дякую!
Потестую різні способи, думаю буде ще пару питань. Але поки все виглядає добре.

Зараз таке виникло. Як зробити, щоб ці дані друкувалися у файл і при новій операції додавалися до кінця? Бо в консоль вивід не влазить, та й гадаю так швидше було б.

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Потрібен такий скрипт...
« Відповідей #7 : 2012-08-04 15:53:42 »
Код: Bash
  1. bla-bla >> output_file.txt

Відсутній v.2.1

  • Письменник
  • *****
  • дописів: 639
  • Карма: +0/-0
Re: Потрібен такий скрипт...
« Відповідей #8 : 2012-08-04 19:12:31 »
Ну, а щоб зовсім було круто! Підкажіть як скомандувати, щоб з input.file бралися дані по одному рядку і таким чином оброблялися?!

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Потрібен такий скрипт...
« Відповідей #9 : 2012-08-04 20:53:12 »
Код: Bash
  1. perl -e 'my ( $iter ) = shift; while ( my $line = <> ) { for ( my $i = 0; $i < $iter; $i ++ ) { $_ = $line; chomp; s/(\d+)/$1+$i/eg; print "$_\n" } }' 10 < infile.txt >> outfile.txt

Код: Bash
  1. while read format; do for i in {1..10}; do printf "$format\n" "$i"; done; done < infile.txt >> outfile.txt

Відсутній v.2.1

  • Письменник
  • *****
  • дописів: 639
  • Карма: +0/-0
Re: Потрібен такий скрипт...
« Відповідей #10 : 2012-08-12 20:49:59 »
Вибачте, трохи був заклопотаний і забув віддячити. Михайло Даниленко, напишіть мені в приват ваш телефон, щоб я міг переказати обіцяні кошти.

Відсутній Михайло Даниленко

  • Адміністратор ЩОДО
  • Літератор
  • *****
  • дописів: 1262
  • Карма: +0/-0
  • [Debian Stretch]
Re: Потрібен такий скрипт...
« Відповідей #11 : 2012-08-12 20:58:55 »
Вибачте, трохи був заклопотаний і забув віддячити. Михайло Даниленко, напишіть мені в приват ваш телефон, щоб я міг переказати обіцяні кошти.
Дякую, але пара рядків стандартних конструкцій того не варта :)
Якщо хочете, використайте їх на якусь благодійність.