A opção -e
de useradd
espera uma data no formato de data internacional ( YYYY-MM-DD
) como pode ser obtida na página man:
-e, --expiredate EXPIRE_DATE
The date on which the user account will be disabled. The date is
specified in the format YYYY-MM-DD.
[...]
Você agora simplesmente precisa declarar a data em que a conta deve expirar. Você pode fazer esse cálculo no PHP. A resposta a que você ligou faz isso usando uma ferramenta de linha de comando padrão para que nenhuma linguagem de alto nível tenha que ser usada.
Aqui está um código de exemplo de como fazer isso em PHP:
$diffHour = 0;
$diffMinute = 0;
$diffSecond = 0;
$diffMonth = 10;
$diffDay = 0;
$diffYear = 0;
$hour = date("H") + $diffHour;
$minute = date("i") + $diffMinute;
$second = date("s") + $diffSecond;
$month = date("n") + $diffMonth;
$day = date("j") + $diffDay;
$year = date("Y") + $diffYear;
$time = mktime($hour, $minute, $second, $month, $day, $year);
$date = date("Y-m-d", $time);
Preencha as variáveis no bloco mais alto. Eu preenchi-os para o seu exemplo de 10 meses. Você pode voltar no tempo também. Por exemplo, se você quiser que ela expire em 7 meses menos 4 dias, você pode definir $diffMonth = 7;
e $diffDay = -4;
.
Em seguida, passe o valor de data ( 2018-02-09
quando executado hoje (exceto se você mora nos Estados Unidos, então é um dia antes porque ainda estamos usando um sistema de horário retardado com fusos horários)) para seu script bash. / p>
Exemplo de código bash:
useradd -e "2018-02-09" "rizal"