Вычленение цифр из числа.
Модераторы: /dev/random, Модераторы разделов
-
Andrey95
- Сообщения: 57
Вычленение цифр из числа.
Здравствуйте!
Пишу bash скрипт. Возник вопрос:
Есть переменная в которую записано число.
Надо выделить из этого числа первые четыре цифры и записать в другую переменную.
Как реализовать сие?
Заранее спасибо за ответы.
Пишу bash скрипт. Возник вопрос:
Есть переменная в которую записано число.
Надо выделить из этого числа первые четыре цифры и записать в другую переменную.
Как реализовать сие?
Заранее спасибо за ответы.
-
/dev/random
- Администратор
- Сообщения: 5448
- ОС: Gentoo
Re: Вычленение цифр из числа.
В баше все переменные - строки, даже если в них хранятся числа. Соответственно, вам нужно выделить первые 4 символа из этой строки. Так что используйте стандартную конструкцию ${parameter:offset:length}.
-
allez
- Сообщения: 2223
- Статус: Не очень злой админ :-)
- ОС: SuSE, CentOS, FreeBSD, Windows
Re: Вычленение цифр из числа.
Advanced bash-scripting guide, раздел "Работа со строками", подраздел "Извлечение подстроки".
-
Andrey95
- Сообщения: 57
Re: Вычленение цифр из числа.
#!/bin/bash
echo "Введите номер"
$Cont
$Check
read Cont
echo $Cont
echo `expr substr $Cont 1 4` > $Check
echo $Check
andreyshel@andreyshel-desktop:~$ '/home/andreyshel/Рабочий стол/test.sh'
Введите номер
0003435229
0003435229
/home/andreyshel/Рабочий стол/vpn.sh: line 7: $Check: неоднозначное перенаправление
Интересно по какому случаю?
echo "Введите номер"
$Cont
$Check
read Cont
echo $Cont
echo `expr substr $Cont 1 4` > $Check
echo $Check
andreyshel@andreyshel-desktop:~$ '/home/andreyshel/Рабочий стол/test.sh'
Введите номер
0003435229
0003435229
/home/andreyshel/Рабочий стол/vpn.sh: line 7: $Check: неоднозначное перенаправление
Интересно по какому случаю?
-
/dev/random
- Администратор
- Сообщения: 5448
- ОС: Gentoo
Re: Вычленение цифр из числа.
o_O Вы на баше пишете или на чём?
Во-первых, что это за строки 4 и 5? Это означает "выполнить команды, записанные в переменных Cont и Check"! Во-вторых, в строке 7 вы пытаетесь перенаправить вывод в _файл_, имя которого записано в переменной Check. Поскольку она пуста (если скрипт не унаследовал другое её значение из родительского окружения), то эта конструкция не имеет никакого смысла. Почитайте сначала какой-нибудь простенький туториал по башу, и только потом уже пытайтесь что-то писать.
-
GuttaLinux
- Сообщения: 212
- ОС: 1004/804/910/sid/etch/arch
-
Andrey95
- Сообщения: 57
Re: Вычленение цифр из числа.
Мопед не мой... взято отсюда:
http://linfoline.homedns.org/bash/abs-book.htm
за исключением правой части строки 7.
Спасибо. Исправил по совету guttalinux
http://linfoline.homedns.org/bash/abs-book.htm
за исключением правой части строки 7.
Спасибо. Исправил по совету guttalinux
-
/dev/random
- Администратор
- Сообщения: 5448
- ОС: Gentoo
Re: Вычленение цифр из числа.
Ошибка 404
-
Andrey95
- Сообщения: 57
Re: Вычленение цифр из числа.
Кто-то вырубил компьютер. Аналогичное на опеннете.
-
allez
- Сообщения: 2223
- Статус: Не очень злой админ :-)
- ОС: SuSE, CentOS, FreeBSD, Windows
-
Andrey95
- Сообщения: 57
-
/dev/random
- Администратор
- Сообщения: 5448
- ОС: Gentoo
Re: Вычленение цифр из числа.
Ну и где там такой скрипт? Что-то мне кажется, что оттуда вы взяли только команду expr, а остальное - именно ваш мопед.
Upd: ладно, если не хотите отвечать - забейте.
Upd: ладно, если не хотите отвечать - забейте.
-
Andrey95
- Сообщения: 57
Re: Вычленение цифр из числа.
Точно такого нет. Но команды я брал оттуда
-
deadhead
- Сообщения: 1913
- Статус: zzz..z
Re: Вычленение цифр из числа.
/offtop
Уморили... чес слово :-)
a: Мопед что-то не едет...
b: Дай гляну... у-у-у ты где его вообще взял?
а: Да вон в том магазине...
b: Так там же автозапчасти только и продают!?
a: Ну вот я их и взял.. не пойму только ЧЕГО мопед-то не едет?!
Уморили... чес слово :-)
a: Мопед что-то не едет...
b: Дай гляну... у-у-у ты где его вообще взял?
а: Да вон в том магазине...
b: Так там же автозапчасти только и продают!?
a: Ну вот я их и взял.. не пойму только ЧЕГО мопед-то не едет?!
[x] close