Pythonでfstabを読んで変更する方法は?


8

私は自動的に私の設定したいfstab内をpythonスクリプトを実行して。での使用を考えConfigParserましたがpython、適切に使用できません。


1
これをStackOverflowに移行することを投票しました。* nix OSで特定のファイルを編集することについて話しているかもしれませんが、プログラミング言語での編集について質問します(つまり、答えは* nixよりもプログラミングに関係しているということです)。
HalosGhost 14

1
@HalosGhostシェルプログラミングは、特定のファイルの編集に関するものであることが多く、U&Lの管理目的である限り、常にいくつかのプログラミング言語で書かれています。これらの質問をすべて移動する必要はないと思います。
Anthon、2014

@Anthon、シェルはしばしば* nix固有です。これはシェルプログラミングの質問ではなく、Pythonの質問です。しかし、私には移行する能力がありません。ただの投票でした。
HalosGhost 14

回答:


9

fstabモジュールを使用できます。

そのドキュメントはこちら

例:

fstab = Fstab()

for entry in fstab.entries:
    pprint.pprint(entry)

5

これは、/etc/fstabファイルがConfigParserがサポートする形式に準拠していないため機能しません。

man 5 fstab示し、/etc/fstabファイルは空白は6列でファイルを分離します。Python ConfigParserは、一般的にファイルと呼ばれる.iniファイルを解析するためのライブラリであり、単純化され、キーと値のペアを含むセクションで構成されています。

 [section_name1]
 key1 = value1
 key2 = value2
 [section_name2]
 key3 = value3

fstab自分でファイルを解析するのは比較的簡単です。すべてのコメント行(最初の非空白文字 '#'を含む行)をコピーし、他の行を使用.split()して6つのフィールドに分割します。これを使用して、fstabファイルを79列だけに再配置します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.