если кто-то может написать лучшую тему, то я был бы счастлив:D

INPUT:
201103 1 /mnt/hdd/PUB/SOMETHING
201102 7 /mnt/hdd/PUB/SOMETH ING
201103 11 /mnt/hdd/PUB/SO METHING
201104 3 /mnt/hdd/PUB/SOMET HING
201106 1 /mnt/hdd/PUB/SOMETHI NG

I NEED THIS OUTPUT:
201103 01 /mnt/hdd/PUB/SOMETHING
201102 07 /mnt/hdd/PUB/SOMETH ING
201103 11 /mnt/hdd/PUB/SO METHING
201104 03 /mnt/hdd/PUB/SOMET HING
201106 01 /mnt/hdd/PUB/SOMETHI NG

Как я могу добавить "0", если есть только, например: "1" в части "день"? [мне нужен этот формат даты: ГГГГММ ДД]

2 ответа2

2

Вы можете попробовать, например, это:

sed -r 's/^([0-9]{6}\s)([0-9]\s)/\10\2/'
0
$ sed 's/\(\<[0-9]\>\)/0\1/' ./infile
201103 01 /mnt/hdd/PUB/SOMETHING
201102 07 /mnt/hdd/PUB/SOMETH ING
201103 11 /mnt/hdd/PUB/SO METHING
201104 03 /mnt/hdd/PUB/SOMET HING
201106 01 /mnt/hdd/PUB/SOMETHI NG

https://unix.stackexchange.com/questions/9137/sed-eg-1-to-01-how

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .