osとioライブラリ
システム時刻、環境変数、ファイルシステム、stdin/stdoutにアクセスします。
「osとioライブラリ」はCoddyKit上の無料Lua Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはLua Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Lua Academyコースには全4レッスンが含まれています。
os モジュールの概要
os モジュールは、時刻、日付、環境変数、プロセス制御、ファイルシステム操作など、オペレーティングシステムの機能へのアクセスを提供します。
os.time と os.clock
os.time() は現在時刻を Unix タイムスタンプとして返します。os.clock() はプログラムが使用した CPU 時間を返し、ベンチマークに役立ちます。
local t0 = os.clock()
for i = 1, 1e6 do end
print(("%.4f sec CPU"):format(os.clock() - t0))os.date
os.date(format, time) はタイムスタンプをフォーマットします。"*t" を使うと、year、month、day、hour、min、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) は環境変数を読み取ります。設定されていない場合は nil を返します。
local path = os.getenv("PATH")
print(path and path:sub(1, 50) or "not set")os.execute と os.exit
os.execute(cmd) はシェルコマンドを実行し、終了コードを返します。os.exit(code) はプロセスを終了します。
local ok = os.execute("echo hello")
print("exit status:", ok)os.rename と os.remove
os.rename(old, new) はファイルの名前を変更または移動します。os.remove(path) はファイルまたは空のディレクトリを削除します。失敗時は、どちらも nil とエラーを返します。
io モジュールの概要
io モジュールはファイル I/O を提供します。ファイルは io.open で開き、file:read で読み込み、file:write で書き込みます。
io.lines
io.lines(filename) はファイルの各行を走査するイテレーターを返します。処理が終わるとファイルは自動的に閉じられます。
for line in io.lines("data.txt") do
print(line)
end標準入力からの io.read
io.read() は標準入力から1行読み取ります。io.read("*n") は数値を、io.read("*a") は標準入力全体を読み取ります。
io.write("Enter name: ")
local name = io.read()
print("Hello, " .. name)io.popen
io.popen(cmd, mode) はシェルコマンドとのパイプを開きます。コマンドの出力はファイルハンドルと同じように読み取れます。
local f = io.popen("date")
local date = f:read("*l")
f:close()
print(date)stdin、stdout、stderr
io.stdin、io.stdout、io.stderr は、標準ストリーム用にあらかじめ開かれたファイルハンドルです。
io.stderr:write("Error: something went wrong\n")os/io に関する質問
プログラムが使用した CPU 時間を返す関数はどれですか?
復習:os と io ライブラリ
os ライブラリは、時刻、環境、プロセス、ファイルシステム操作を扱います。io ライブラリは、ファイル I/O、パイプ、標準ストリームを扱います。両者を合わせることで、システムとの一般的なやり取りのほとんどに対応できます。
よくある質問
「osとioライブラリ」レッスンは無料ですか?
はい。「osとioライブラリ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Lua Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Lua Academyコースには全4レッスンが含まれています。
「osとioライブラリ」で何を学びますか?
システム時刻、環境変数、ファイルシステム、stdin/stdoutにアクセスします。 ブラウザで直接実行するハンズオンコードでLua Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Lua Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのLua Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「osとioライブラリ」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このLua Academyレッスンでコードを書いて実行できますか?
はい。すべてのLua Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- mathライブラリ関数
- tableライブラリ関数
- osとioライブラリ
- debugライブラリ