os
-- 基本的な「オペレーティングシステム」サービス¶
このモジュールは、該当する CPython モジュールのサブセットを実装しています。
詳しくはオリジナルの CPython ドキュメンテーションを参照してください: os
.
os
モジュールには、ファイルシステムのアクセス、マウント、ターミナルのリダイレクトと複製、uname
と urandom
のための関数があります。
一般関数¶
- os.uname()¶
基盤のマシンやオペレーティングシステムに関する情報を含むタプル(おそらく名前付きタプル)を返します。タプルには次の5つのフィールドがあり、それぞれが文字列です。
sysname
-- 基盤システムの名前nodename
-- ネットワーク名(sysname
と同じこともあります)release
-- 基盤システムのバージョンversion
-- MicroPython のバージョンとビルド日付machine
-- 基盤ハードウェアの識別子(ボード、CPUなど)
- os.urandom(n)¶
n 個のランダムバイトを持つ bytes 型オブジェクトを返します。可能な限り、ハードウェア乱数生成器によって乱数を生成します。
ファイルシステムのアクセス¶
- os.chdir(path)¶
カレントディレクトリを変更します。
- os.getcwd()¶
カレントディレクトリのパスを返します。
- os.ilistdir([dir])¶
この関数はイテレータを返します。イテレータが生成するのは、ディレクトリ内のエントリに対応するタプルです。引数なしの場合はカレントディレクトリを、それ以外の場合は dir で指定したディレクトリをリストします。
タプルの形式は (name, type, inode [, size]) です。
name は文字列(dir が bytes 型オブジェクトの場合は bytes 型オブジェクト)であり、エントリの名前です。
type はエントリのタイプを指定する整数で、ディレクトリの場合は 0x4000、通常のファイルの場合は 0x8000 です。
inode はファイルのiノードに対応する整数であり、そのような概念を持たないファイルシステムについては 0 になります。
一部のプラットフォームでは、エントリのサイズを含む4タプルが返されることがあります。ファイルエントリの場合、 size はファイルのサイズを表す整数で、未知の場合は -1 です。現在のところ、ディレクトリエントリについては未定義です。
- os.listdir([dir])¶
引数を指定しない場合は、カレントディレクトリ内のエントリを表示します。それ以外の場合は指定されたディレクトリ内のエントリを表示します。
- os.mkdir(path)¶
新規にディレクトリを作成します。
- os.remove(path)¶
ファイルを削除します。
- os.rmdir(path)¶
ディレクトリを削除します。
- os.rename(old_path, new_path)¶
ファイルの名前を変更します。
- os.stat(path)¶
ファイルまたはディレクトリのステータスを取得します。
- os.statvfs(path)¶
ファイルシステムの状態を取得します。
次の順序でファイルシステム情報を含むタプルを返します。
f_bsize
-- ファイルシステムのブロックサイズf_frsize
-- フラグメントサイズf_blocks
-- f_frsize 単位の fs のサイズf_bfree
-- 空きブロックの数f_bavail
-- 権限なしユーザーのための空きブロック数f_files
-- iノード数f_ffree
-- フリーのiノードの数f_favail
-- 権限なしユーザの空きiノード数f_flag
-- マウントフラグf_namemax
-- 最大ファイル名の長さ
iノードに関連するパラメータ
f_files
,f_ffree
,f_avail
,f_flags
は、ポート固有の実装で使えない場合には 0 になります。
- os.sync()¶
すべてのファイルシステムを同期します。
ターミナルのリダイレクトと複製¶
- os.dupterm(stream_object, index=0, /)¶
与えた
stream
ライクなオブジェクトに MicroPython 端末(REPL)を複製または切り替えを行います。 stream_object の引数はネイティブストリームオブジェクトか、io.IOBase
から派生してreadinto()
とwrite()
メソッドを実装したものでなければなりません。ストリームは非ブロッキングモードで、readinto()
は読み込み可能なデータがない場合はNone
を返すようにします。この関数を呼び出した後、すべての端末出力がこのストリーム上で繰り返され、ストリーム上で利用可能なすべての入力がターミナル入力に渡されます。
index パラメータは負でない整数であり、設定されている複製を指定します。ポートは2つ以上のスロットを実装できます(スロット 0 は常に使用可能です)。その場合、端末の入出力は設定されているすべてのスロットに複製されます。
stream_object に
None
を渡した場合、 index によって指定されたスロットで重複が取り消されます。この関数は、指定したスロットの前のストリームライク風オブジェクトを返します。
ファイルシステムのマウント¶
次の関数やクラスは vfs
モジュールに移動しました。このモジュールでは、後方互換性のために提供されており、MicroPython のバージョン2では削除されます。
- os.umount(mount_point)¶
vfs.umount
を参照。
- class os.VfsFat(block_dev)¶
vfs.VfsFat
を参照。
- class os.VfsLfs1(block_dev, readsize=32, progsize=32, lookahead=32)¶
vfs.VfsLfs1
を参照。
- class os.VfsLfs2(block_dev, readsize=32, progsize=32, lookahead=32, mtime=True)¶
vfs.VfsLfs2
を参照。
- class os.VfsPosix(root=None)¶
vfs.VfsPosix
を参照。