#!/bin/bash
HOUR='date +%H'
awk -v hour=$HOUR -F"|" '{if($1 >= hour)print}' file.txt > newfile.txt
mv newfile.txt file.txt
Eu tenho um arquivo onde os dados estão presentes no formato abaixo:
cat file.txt
02|123
04|321
08|453
09|364
01|789
23|765
então aqui 02,04 ... representa Hora e 123,321 ... representa algum valor aleatório.
Eu quero excluir todas as linhas desse arquivo em que o primeiro valor dois é menor que a hora atual, que será obtida de date +'%H'
.
Suponha que a hora atual seja 10, então eu quero excluir as linhas contendo as duas primeiras menos de 10, ou seja,
02|123
04|321
08|453
09|364
01|789
Tags shell-script