Lua Academy · Lekcja

Biblioteki os i io

Proszę uzyskiwać dostęp do czasu systemowego, zmiennych środowiskowych, systemu plików oraz stdin/stdout.

Lekcja 3 z 413 kroki

Biblioteki os i io to bezpłatna lekcja Lua Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Lua Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Lua Academy zawiera 4 lekcji w sumie.

Przegląd modułu os

Moduł os zapewnia dostęp do funkcji systemu operacyjnego: czasu, daty, zmiennych środowiskowych, sterowania procesami i operacji na systemie plików.

os.time i os.clock

os.time() zwraca bieżący czas jako znacznik czasu Unix. os.clock() zwraca czas procesora wykorzystany przez program — jest przydatne podczas testów wydajności.

local t0 = os.clock()
for i = 1, 1e6 do end
print(("%.4f sec CPU"):format(os.clock() - t0))

os.date

os.date(format, time) formatuje znacznik czasu. Proszę użyć "*t", aby otrzymać tabelę z polami year, month, day, hour, min i sec.

print(os.date("%Y-%m-%d %H:%M:%S"))  -- 2025-01-15 14:30:00
local d = os.date("*t")
print(d.year, d.month, d.day)

os.getenv

os.getenv(name) odczytuje zmienną środowiskową. Zwraca nil, jeśli zmienna nie jest ustawiona.

local path = os.getenv("PATH")
print(path and path:sub(1, 50) or "not set")

os.execute i os.exit

os.execute(cmd) uruchamia polecenie powłoki i zwraca kod wyjścia. os.exit(code) kończy proces.

local ok = os.execute("echo hello")
print("exit status:", ok)

os.rename i os.remove

os.rename(old, new) zmienia nazwę pliku lub przenosi go. os.remove(path) usuwa plik lub pusty katalog. W razie błędu obie funkcje zwracają nil oraz błąd.

Przegląd modułu io

Moduł io zapewnia operacje wejścia-wyjścia na plikach. Pliki otwiera się za pomocą io.open, odczytuje przez file:read, a zapisuje przez file:write.

io.lines

io.lines(filename) zwraca iterator przechodzący po wierszach pliku. Po zakończeniu automatycznie zamyka plik.

for line in io.lines("data.txt") do
  print(line)
end

io.read ze standardowego wejścia

io.read() odczytuje wiersz ze standardowego wejścia. io.read("*n") odczytuje liczbę, a io.read("*a") odczytuje całe standardowe wejście.

io.write("Enter name: ")
local name = io.read()
print("Hello, " .. name)

io.popen

io.popen(cmd, mode) otwiera potok do polecenia powłoki lub z niego. Dane wyjściowe polecenia można odczytywać jak z uchwytu pliku.

local f = io.popen("date")
local date = f:read("*l")
f:close()
print(date)

stdin, stdout, stderr

io.stdin, io.stdout i io.stderr to wstępnie otwarte uchwyty plików dla standardowych strumieni.

io.stderr:write("Error: something went wrong\n")

Pytanie o biblioteki os/io

Jaka funkcja zwraca czas procesora wykorzystany przez program?

Podsumowanie: biblioteki os i io

Biblioteka os obsługuje czas, środowisko, procesy i operacje na systemie plików. Biblioteka io obsługuje operacje wejścia-wyjścia na plikach, potoki i standardowe strumienie. Razem pokrywają większość potrzeb związanych z interakcją z systemem.

Bezpłatny start

Ucz się Lua dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
40
Lekcje
159

Często zadawane pytania

Czy lekcja „Biblioteki os i io” jest bezpłatna?

Tak — pełny tekst „Biblioteki os i io” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Lua Academy, przejdź na CoddyKit PRO. Kurs Lua Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Biblioteki os i io”?

Proszę uzyskiwać dostęp do czasu systemowego, zmiennych środowiskowych, systemu plików oraz stdin/stdout. Ćwiczysz Lua Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Lua Academy?

Nie wymagamy żadnego doświadczenia. Lua Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Biblioteki os i io”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Lua Academy?

Tak. Każda lekcja Lua Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Funkcje biblioteki math
  2. Funkcje biblioteki table
  3. Biblioteki os i io
  4. Biblioteka debug
← Powrót do Lua Academy