2015-04-21 3 views
-1

У меня есть дата, которая вводится в скрипт bash через 3 отдельных аргумента командной строки. Пользователь может ввести 1 или 2 цифры для месяца и дня и 4 цифры за год (например, 2014 01 01 или 2014 1 1). Но для моего скрипта требуется две цифры для запуска. Я думал об использовании инструкции if, чтобы справиться с этим. В основном было бы сказано: «если количество цифр в месяце меньше 2, то поставить перед ним ноль перед ним». Хотя, я не уверен, как определить количество цифр в bash. Я довольно новичок в написании сценариев, поэтому любая помощь будет принята с благодарностью!Определить количество цифр bash

ответ

0

Вы могли бы решить эту проблему с помощью команды printf:

month=5 
month2=`printf %02d $month` 

В формате %02d спецификатор формата $month как две десятичные цифры с ведущим нулем при необходимости.

0

Для любой переменной Баш $x (включая параметры $1, $2 и т.д.), ${#x} длина $x в символах.

Смежные вопросы