Как этот сценарий оболочки (без bash) может отображать секунды в формате DDD:HH:MM:SS?

Что касается первоначальной версии вопроса, я поставил "лайк" и -проголосовал за ответ Иниана и удалил этот, но теперь, когда вопрос изменился....

awk 'NR>1{if ($2~/^\*\*/) $2=foo;if ($3!~/^[[:digit:].]+$/) $3=foo; $1=$2=$3="";print}' file

Операторы ifдолжны помещать фиктивные значения во второй и третий столбцы, если второй равен **Neverили если третий не является IP-адресом, но приведет к ошибке ответа, если существуют другие необычные возможности.

Для удобства чтения давайте повторно -опубликуем один -вкладыш, так как он немного длинный...

awk 'NR > 1 {
  if ( $2 ~ /^\*\*/ ) $2=foo
  if ( $3 !~ /^[[:digit:].]+$/ ) $3=foo
  $1=$2=$3=""
  print }' file
0
22.01.2020, 04:06
2 ответа

Далеко ли

echo $((DURSECS / 86400)):$(date +%T -d@$(( DURSECS % 86400 )))
470:17:17:36

понял?

0
28.01.2020, 02:54
#!/bin/sh
INTERVAL=102
TOTAL=86401
DURSECS=$(($TOTAL * $INTERVAL))
printf "\n$DURSECS seconds.\n"
printf "\nFormatted as DAYS:HOURS:MINUTES:SECONDS - DDD:HH:MM:SS - the total duration will be:\n"
ddd=$(($DURSECS / 86400))
printf "$ddd:"
date -u -d @${DURSECS} +"%H:%M:%S"
printf '\n\nTHE END\n'
0
28.01.2020, 02:54

Теги

Похожие вопросы