ubuntu kernelversion number/de
Zurück zur Seite Code Beispiele.
Dieser Artikel beschäftigt sich mit der Linuxprogrammierung (Ubuntu).
Die Prozedur ermittelt die aktuelle Versionsnummer des Kernels.
uses
SysUtils, ...;
...
function funLeseDatei: string;
var
txtDatei: Textfile;
begin
Assignfile(txtDatei, '/proc/version'); // 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 funKernelversionsNummer: string;
var
intI: integer = 0;
intZaehler: integer = 0;
strProcVersion: string = '';
begin
Result := '';
strProcVersion := funLeseDatei();
if strProcVersion = '' then
exit;
for intI := 1 to Length(strProcVersion) do
begin
if (strProcVersion[intI] = '-') then
begin
intZaehler := intZaehler + 1;
if intZaehler > 1 then break;
end;
if (strProcVersion[intI] in ['0'..'9', '.', '-']) then
Result := Result + strProcVersion[intI];
end;
end;
...Das ganze läßt sich strukturierter mit FPUname ermitteln:
program kerninfo(input, output, stderr);
uses
// baseUnix for fpUname
baseunix,
// sysutils for format
sysutils,
// gettext for internationalization
gettext;
resourcestring
unameFailure = 'uname(2) failed';
releaseNumber = 'release number: %0:s';
versionNumber = 'version number: %0:s';
var
kernelInfo: utsName;
begin
translateResourceStrings('./' + applicationName() + '.%s.mo');
if fpUname(kernelInfo) <> 0 then
begin
writeLn(stderr, unameFailure);
halt(1);
end;
writeLn(format(releaseNumber, [kernelInfo.release]));
writeLn(format(versionNumber, [kernelInfo.version]));
end.From the Free Pascal wiki, page "ubuntu kernelversion number/de", as it stood on 2022-08-06 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
