Discussion:
[Ruby FileMagic] ARGF/STDIN testen
(zu alt für eine Antwort)
Michael Uplawski
2024-07-04 07:19:06 UTC
Permalink
Moin.

Ich möchte Daten aus ARGF (STDIN) auf Mime-Types und/oder
Magic-Ausgaben prüfen.

Im Moment komme ich mit FileMagic und einer temporären Datei klar,
finde das aber fürchterlich unelegant.

Kennt jemand einen besseren Weg?

Herzlichen Dank!
--
Geh Kaffee kochen!
Michael Uplawski
2024-07-05 08:11:36 UTC
Permalink
Moin.
Post by Michael Uplawski
Ich möchte Daten aus ARGF (STDIN) auf Mime-Types und/oder
Magic-Ausgaben prüfen.
In einem Web-Forum wurde ich auf ARGF.read und ARGF.filename
hingewiesen, zwei Methoden und Vorgehensweisen, die ich noch nicht
kannte.

Ich glaube, damit lässt sich alles machen, was ich brauche.
Post by Michael Uplawski
Im Moment komme ich mit FileMagic und einer temporären Datei klar,
finde das aber fürchterlich unelegant.
Kennt jemand einen besseren Weg?
Cheerio und schönes Wochenende

Michael
--
Geh Kaffee kochen!
Michael Uplawski
2024-07-07 14:12:32 UTC
Permalink
Post by Michael Uplawski
In einem Web-Forum wurde ich auf ARGF.read und ARGF.filename
hingewiesen, zwei Methoden und Vorgehensweisen, die ich noch nicht
kannte.
Ich glaube, damit lässt sich alles machen, was ich brauche.
Letztendlich ist FileMagic.mime.buffer("STRING") wohl alles,
was gebraucht wird. Ich kann nicht sagen, ob die Qualität der Doku
oder die Auswahl der verkehrten Beispiele für meine Schwierigkeiten
verantwortlich ist.

Jedenfalls tut dieser Code alles, was ich will:
-------------
# artext.class == String (quasi)
if !artext.strip.empty?
mime = FileMagic.mime.buffer artext
if mime.start_with?('message/news')
#
# do as you must
#
else
# log
error ('Input is of wrong mime-type ' << mime)
# Aufrufsyntax
usage()
exit false
end
end
--------------

Ω
--
Geh Kaffee kochen!
Loading...