Ввод данных из файла в этикетку

Если вам нужны файлы с возрастом ровно 48 часов, а не 2 дня, вам следует добавить - daystart в свой ] команда find . Это вам поможет.

find . type -f -daystart -mtime +1
0
06.10.2018, 21:49
2 ответа

Вы можете сделать что-то вроде этого:

#!/bin/bash
cat file | sed '1d;/^\s*$/d;s/:/\t/g' | while IFS='\t' read line; do

firstname=$(echo $line | awk '{print $2}')
secondname=$(echo $line | awk '{print $3}')
phone=$(echo $line | awk '{print $4}')

echo "
dn: uid=$firstname $secondname, dc=example, dc=com
cn: $firstname $secondname
sn: $secondname
telephoneNumber: $phone

==================="    
done

Выход:

dn: uid=John anderson, dc=example, dc=com
cn: John anderson
sn: anderson
telephoneNumber: 857-201-2213

===================

dn: uid=Sam Asper, dc=example, dc=com
cn: Sam Asper
sn: Asper
telephoneNumber: 876-590-8223

===================

dn: uid=Adam marlen, dc=example, dc=com
cn: Adam marlen
sn: marlen
telephoneNumber: 871-343-2233

===================

dn: uid=Suzi sanders, dc=example, dc=com
cn: Suzi sanders
sn: sanders
telephoneNumber: 991-531-9821

===================

dn: uid=paul sepan, dc=example, dc=com
cn: paul sepan
sn: sepan
telephoneNumber: 992-432-2267

===================
0
28.01.2020, 02:42

Только с Awk:

awk -F: '
  NR > 1 {
    printf("dn: uid=%s, dc=example, dc=com\ncn: %s\nsn: %s\ntelephoneNumber: %s\n", 
              $2 " " $3, $2 " " $3, $3, $4); 
    print "\n===================";
  }
' file
1
28.01.2020, 02:42

Теги

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