функционал административных инструментов в linux с помощью оболочки python. Многим привыкшим работать в консоли при изучении python
доставляет некоторые проблеммы то что из питоновской оболочки что бы обратится
к shell нужно использовать такие конструкции как:
import os
os.system('ls -l')
или в более продвинутой форме:
import subprocess
subprocess.call(['ls', '-l', '/home'])
subprocess.call('ls -l /home', shell=True)
В оболочке ipython присутствует замечательная конструкция способная
соединить bash и python в одно целое. Существует префикс ! для запуска
shell команд точно также как в vim:
!ls -l /home
!sudo du -hsc /tmp
И даже более того все это можно объединить под одним vi подобным способом
навигации. В файле .bashrc в конце добавляем строчку:
set -o vi
Это сделает возможным установить управление в shell vim подобным а создание
ниже приведенного файла в домашней директории проделает тотже эффект в питоновском интерпетаторе:
echo 'set editing-mode vi' >> .inputrc
Единственное о чем хотелось бы напомнить что изминения в конфигурационных
файлах нужно проводить и в директории пользователя рут иначе запускаясь от
рута вы потеряете вышеописанные способности.
Надеюсь это станет продвинутым первым шагом для тех кто еще не знаком с питоном и с оболочкой
ipython в частности. Удачи.
#python #bash
Присоединяйтесь — мы покажем вам много интересного
Присоединяйтесь к ОК, чтобы подписаться на группу и комментировать публикации.
Комментарии 21
cd /etc/apt/
ls -l soucers.list
Просмотреть доступные команды без префикса можно с помощью строки:
lsmagic
А посмотреть справку введя команду с вопросительным знаком:
ls?
Все в одном пакете, можно сказать баш с силой питона. Мне поначалу этого очень не хватало, как будто у меня были руки связаны, все время пыталась набрать комады баша.
apt-get upgrade
Все катит