Difference between revisions of "Linux distribution recognize/de"
From Lazarus wiki
Jump to navigationJump to search (add hint about LSB) |
m (Fixed syntax highlighting; deleted category included in page template) |
||
Line 7: | Line 7: | ||
Die Prozedur ermittelt den Namen der aktuellen Linuxdistribution. | Die Prozedur ermittelt den Namen der aktuellen Linuxdistribution. | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang=pascal> |
uses | uses | ||
SysUtils, ...; | SysUtils, ...; | ||
Line 60: | Line 60: | ||
Auf Systemen, die dem [https://www.linuxbase.org/ Linux Standard Base] Standard folgen, kann die Datei <tt>/etc/lsb-release</tt> ausgelesen werden. | Auf Systemen, die dem [https://www.linuxbase.org/ Linux Standard Base] Standard folgen, kann die Datei <tt>/etc/lsb-release</tt> ausgelesen werden. | ||
− | |||
− | |||
− |
Latest revision as of 02:41, 19 February 2020
Dieser Artikel behandelt ausschließlich Linux.
Siehe auch: Multiplatform Programming Guide/de
│
Deutsch (de) │
Zurück zur Seite Code Beispiele.
Dieser Artikel beschäftigt sich mit der Linuxprogrammierung.
Die Prozedur ermittelt den Namen der aktuellen Linuxdistribution.
uses
SysUtils, ...;
...
function funLeseDatei: string;
var
txtDatei: Textfile;
begin
Assignfile(txtDatei, '/etc/issue'); // weist txtDatei die Datei zu
reset(txtDatei); // oeffnet die Datei zum lesen
readln(txtDatei, Result); // liest die erste Zeile
Closefile(txtDatei); // schliesst die Datei
end;
function funLinuxDistribution: string;
var
strDistribution: string;
begin
Result := '';
strDistribution := funLeseDatei;
if strDistribution = '' then
exit;
// Wandelt alle Grossbuchstaben in Kleinbuchstaben um
strDistribution := LowerCase(strDistribution);
// ermittelt die Distribution
if Pos('debian', strDistribution) > 0 then
Result := 'debian'
else if Pos('kubuntu', strDistribution) > 0 then
Result := 'kubuntu'
else if Pos('red hat', strDistribution) > 0 then
Result := 'red hat'
else if Pos('suse', strDistribution) > 0 then
Result := 'suse'
else if Pos('ubuntu', strDistribution) > 0 then
Result := 'ubuntu';
// .. und der Distributionen mehr ...
end;
...
Auf Systemen, die dem Linux Standard Base Standard folgen, kann die Datei /etc/lsb-release ausgelesen werden.