strftime - игнорировать пустые поля

Я бы добавил эту функцию в свой/home/user/.bashrc

в примере

myFunc() {
  mm=$1
  FILES=/home/user/*
  for f in $FILES; do
    if [[ $f == filename.dd.$mm.yyyy ]]; then
      ls -la $f
    fi
  done
}

и не забыв перезагрузить файл .bashrc с помощью команды source ~/.bashrc, я бы вызвал функцию из оболочки.

mm=$1получит первый параметр (аргумент ), который вы передали функции, вызвав myFunc 08, и поместит его в переменную $mm(, что довольно бесполезно, вы можете напрямую использовать переменную $1везде, где вам нужно в функцию)

0
14.01.2020, 12:35
1 ответ

Я понял

$ echo -e "one\ntwo 1578678600"|awk '{if($2!="") {t=strftime("%Y-%m-%d %H:%M:%S", $2)} else {t=$2}};{print $1,t}'
one
two 2020-01-10 17:50:00

и даже лучше:

$ echo -e "one\ntwo 1578678600"|awk '{print $1,($2 != ""? strftime("%Y-%m-%d %H:%M:%S", $2) : $2)}'
one
two 2020-01-10 17:50:00
0
28.01.2020, 02:56

Теги

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