Похож на сценарий, был записан для FreeBSD.
-f input_fmt
: Использоватьinput_fmt
как строка формата для парсинга new_date, обеспеченного вместо того, чтобы использовать значение по умолчанию[[[[[cc]yy]mm]dd]HH]MM[.ss]
формат. Парсинг сделан с помощьюstrptime(3)
.-j
: Не пытайтесь назначить дату. Это позволяет Вам использовать-f
флаг в дополнение к+
опция преобразовать один формат даты в другого.
Это нестандартные расширения стандарта date
команда, которая может только отформатировать текущую дату. В соответствии с Linux (или Cygwin) или любая другая система с датой GNU, можно использовать -d
опция, если Вы готовы передать другой формат даты:
TARGET=$(date -d "$1" +%s)
и назовите сценарий как, например. test 2011/05/17 12:00
. Для более необычного парсинга предварительно обработайте строку в оболочке сначала или Perl вызова или Python:
TARGET=$(IFS=/_:; set $1; date +%S $(($2*10000000000+$1*100000000+
$4*1000000+$5*10000+$1)))
TARGET=$(perl -l -e '($day,$month,$year,$h,$m) = split(/[^0-9]+/, $ARGV[0]); print mktime(0, $m, $h, $day, $month, $year-1900)' "$1")
TARGET=$(python -c '
import sys, time;
print time.strftime("%s", time.strptime(sys.argv[1], "%d/%m/%Y_%H:%M"))
' "$1")
Вы могли
nullok
или nullok_secure
не используется в аргументах pam_unix
для auth
в pam конфигурации для любого сервиса.passwd -d foo
chage -d0 foo
Это, кажется, добивается цели здесь (debian хрипящий).