Ich mag das Datum aus einer TXT-Datei wie folgt nehmen:nimmt Datum Datei in Unix
933|Mahinda|Perera|male|1989-12-03|2010-03-17T13:32:10.447+0000|192.248.2.123|Firefox
1129|Carmen|Lepland|female|1984-02-18|2010-02-28T04:39:58.781+0000|81.25.252.111|Internet Explorer
4194|Hồ ChÃ|Do|male|1988-10-14|2010-03-17T22:46:17.657+0000|103.10.89.118|Internet Explorer
8333|Chen|Wang|female|1980-02-02|2010-03-15T10:21:43.365+0000|1.4.16.148|Internet Explorer
und vergleichen Sie es mit einem Datum, dass der Benutzer als Eingabe für diesen Befehl gibt:
./tool.sh --born-since <dateA> --born-until <dateB> -f <file>
und die Zeilen mit den Daten zwischen den ausdrucken, die eingegeben werden .. ich verwende diesen Code:
dateA= date -d "$2" +%Y%m%d
dateB= date -d "$4" +%Y%m%d
echo $2
awk -F'|' -v from=$2 -v to=$4 '{gsub("-","",$5);
gsub("-","",from); gsub("-","",to)}
from <= $5 && $5 <= to ' persons.dat.txt
, aber er druckt gerade aus: 1982-05-29
wenn ich laufen ./tool.sh --born-seit 1982.05.29 --born-bis 1.1.2010
Was meinen Sie mit "etwas läuft schief"? Erzähl uns! Wie sonst erwartest du, dass wir helfen? – arkascha
Ich habe den Text bearbeitet, schau jetzt: D – user3217800
Ja, stimme mit oben überein. Zeige einen einzelnen Aufruf ** mit Argumentwerten ** und der Ausgabe. Wenn die Ausgabe nicht offensichtlich falsch ist, geben Sie bitte das Problem an. Viel Glück. – shellter