Seite 1 von 1

sfdisk fernsteuern

Verfasst: Samstag 21. Juni 2014, 07:22
von Matthias81
Hallo,

kann mir jemand einen Tipp geben wie man folgenden BASH Code in Python3 umsetzen kann:?

Code: Alles auswählen

{
echo ,4,32,*
echo ,31,,-
echo ,31,,-
echo ,,,-
} | sudo  sfdisk -D -H 255 -S 63 -C $CYLINDERS $DRIVE
Viele Grüße,
Matthias

Re: sfdisk fernsteuern

Verfasst: Samstag 21. Juni 2014, 07:32
von BlackJack
@Matthias81: Das `subprocess`-Modul und `os.environ` wären die Tipps die mir spontan einfallen.

Edit: Ungetestet:

Code: Alles auswählen

from __future__ import print_function
import os
from subprocess import PIPE, Popen


def main():
    sfdisk_process = Popen(
        [
            'x_sudo_x',  # "Defused" on purpose. :-)
            'sfdisk',
            '-D',
            '-H', '255',
            '-S', '63',
            '-C', os.getenv('CYLINDERS', ''),
            os.getenv('DRIVE', '')
        ],
        stdin=PIPE
    )
    sfdisk_process.communicate(',4,32,*\n,31,,-\n,31,,-\n,,,-\n')


if __name__ == '__main__':
    main()