Python: pobierz wynik polecenia 'historia' powłoki
Moim celem końcowym jest przechwycenie poprzedniego polecenia wykonanego w terminalu. Ponieważ ~ / .bash_history nie zawiera poleceń z bieżącej sesji terminala, nie mogę po prostu odczytać tego pliku.
Z innego wątku znalazłem ten skrypt:
from subprocess import Popen, PIPE, STDOUT
shell_command = 'bash -i -c "history -r; history"'
event = Popen(shell_command, shell=True, stdin=PIPE, stdout=PIPE,
stderr=STDOUT)
output = event.communicate()
Jest to dość bliskie temu, czego szukam, ale nie będzie również uwzględniać historii z bieżącej sesji terminala, ponieważ jest uruchamiany jako podproces. Czy jest jakiś sposób na wykonanie podobnego polecenia w bieżącej powłoce?