Difference between revisions of "Linux distribution recognize/de"
From Lazarus wiki
Jump to navigationJump to searchm |
(add hint about LSB) |
||
Line 1: | Line 1: | ||
{{Linux distribution recognize}} | {{Linux distribution recognize}} | ||
− | + | ||
− | Zurück zur Seite [[code examples/de|Code Beispiele]]. | + | Zurück zur Seite [[code examples/de|Code Beispiele]]. |
− | + | ||
− | Dieser Artikel beschäftigt sich mit der Linuxprogrammierung. | + | Dieser Artikel beschäftigt sich mit der Linuxprogrammierung. |
− | Die Prozedur ermittelt den Namen der aktuellen Linuxdistribution. | + | |
− | + | Die Prozedur ermittelt den Namen der aktuellen Linuxdistribution. | |
+ | |||
<syntaxhighlight> | <syntaxhighlight> | ||
uses | uses | ||
Line 16: | Line 17: | ||
txtDatei: Textfile; | txtDatei: Textfile; | ||
begin | begin | ||
− | Assignfile(txtDatei, '/etc/issue'); // | + | Assignfile(txtDatei, '/etc/issue'); // weist txtDatei die Datei zu |
− | reset(txtDatei); // | + | reset(txtDatei); // oeffnet die Datei zum lesen |
− | readln(txtDatei, Result); //liest die erste Zeile | + | readln(txtDatei, Result); // liest die erste Zeile |
− | Closefile(txtDatei); // | + | Closefile(txtDatei); // schliesst die Datei |
end; | end; | ||
Line 57: | Line 58: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
+ | Auf Systemen, die dem [https://www.linuxbase.org/ Linux Standard Base] Standard folgen, kann die Datei <tt>/etc/lsb-release</tt> ausgelesen werden. | ||
{{AutoCategory}} | {{AutoCategory}} | ||
[[Category:Code Snippets/de]] | [[Category:Code Snippets/de]] |
Revision as of 03:16, 30 January 2018
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.