cara membaca dan memodifikasi fstab dengan python?


8

Saya ingin secara otomatis configure saya fstabdi pythondengan menjalankan skrip. Saya pikir menggunakan ConfigParserdi python, tapi saya tidak dapat menggunakannya dengan benar.


1
Saya memilih untuk memigrasi ini ke StackOverflow. Anda mungkin berbicara tentang mengedit file tertentu pada OS * nix, tetapi pertanyaan Anda tentang melakukannya dalam bahasa pemrograman (yang artinya, bagi saya, bahwa jawabannya lebih berkaitan dengan pemrograman daripada dengan * nix).
HalosGhost

1
Pemrograman shell @HalosGhost sering tentang mengedit file tertentu dan selalu dalam beberapa bahasa pemrograman, selama itu untuk keperluan administrasi U&L, saya tidak berpikir kita harus memindahkan semua pertanyaan itu.
Anthon

@Anthon, kerang seringkali * spesifik nix. Ini bukan pertanyaan pemrograman shell, ini pertanyaan Python. Tetapi, saya tidak memiliki kemampuan untuk bermigrasi; itu hanya suara.
HalosGhost

Jawaban:


9

Anda dapat menggunakan modul fstab .

Dokumentasinya di sini .

Contoh:

fstab = Fstab()

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

5

Ini tidak akan berfungsi karena /etc/fstabfile tidak sesuai dengan format yang didukung oleh ConfigParser.

Seperti yang man 5 fstabditunjukkan, /etc/fstabfile tersebut adalah file yang dipisahkan spasi dengan 6 kolom. Python ConfigParser adalah pustaka untuk file Parsing yang umumnya dikenal sebagai .inifile yang, disederhanakan, terdiri dari bagian yang berisi pasangan kunci / nilai:

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

Parsing fstabfile itu sendiri relatif mudah. Cukup salin semua baris komentar (yang dengan karakter non-spasi pertama '#') dan pisahkan baris lain menggunakan .split()ke 6 bidang. Saya menggunakannya untuk mengatur ulang fstabfile saya menjadi hanya 79 kolom.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.