pexpect - Noah.org pexpectとは、PythonでLinux等のexpectコマンドみたいな機能が使えるべんりな野郎です。 インストールとかしなくても、pexpect.pyを入手して同じディレクトリに置けば使えちゃうので導入がめっちゃ手軽なのがポイント。 TelnetとかSSHとかFTPとかをPythonで扱いたい日でもコレで安心! で、今日は日本語の情報が少なめなのと、挙動で悩んだ点があったので自分用メモがてら記録します。 import pexpect # 同じディレクトリに置いたらこれだけで使える。 c = pexpect.spawn("telnet 192.168.0.2") # spawnした時点から、pexpectは入力に対する出力(=stdout?)の内容を内部的に保持する。 c.expect("login: ") # expectした時点で、内部的に保持
最近、とっても便利なPexpectというPythonパッケージを使ってみた。 調べたことをまとめがてら、紹介してみる。
vimでpyblosxomのエントリを書いてアップロードするvimスクリプトをpythonで書いた posted by jun-g at Mon, 09 Oct 2006 22:53 JST pyblosxomは、テキストファイルにエントリを書いてFTPでサーバにアップロードする、という仕組みになっている。プラグインで拡張する事でMetaWeblogAPIを使ったり投稿画面を付けたりする事ができるみたいやけどまだ全然試せていなくて、エディタでエントリを書いてアップする、という作業がかなり面倒に感じていた。 そんな時、「pythonを使ってvimからGoogleカレンダーに予定を投げる (ueBLOG)」というエントリを読んで、ちょうどエディタはvimを使ってるし、「Pyblosxom用エントリファイルのFTP送信」を読んで「Emacs便利でいいなー」とか思ってたので、vimでエントリを書い
すっかりTDDで何も作らないまま1年が過ぎたことを記念して、別のテーマに再利用します。 で、まあマイブームがPythonなんでってことです。 やっぱり機能のコードは間違っていた。 def rnlst(ftp, base_dir, sub_dir='.'): ret = [] items = [] ftp.dir('/'.join(base_dir,sub_dir), items.append) for i in items: if i[0] != '-' and i[0] != 'd': continue item = (i[0], '/'.join(sub_dir,i.split()[-1])) if item[0] == '-': ret.append(item) else: sub = rnlst(ftp, base_dir, item[1]) if len(sub) > 0: re
Recent entries Python Anywhere seko 2016-11-19 帯状疱疹 seko 2016-11-18 Chromebook購入 seko 2016-11-03 マカロニさん めざせデータサイエンティスト seko 2016-11-02 脳波計muse 購入 seko 2016-09-04 フェルデンクライスメソッド227回目 seko 2016-08-27 EXCELマクロ タスクが残っていてTypeNameとShell.Applicationを使って起動済みのIEが探せない seko 2016-04-19 pythonでNITE 化学物質総合情報提供システムへアクセス seko 2016-04-19 Raspberry Pi 3で侵入者を発見 seko 2016-04-03 Raspberry Pi 3 OSのインストール seko 2016-04-02
先日書いた、 Pyblosxom用エントリファイル作成 の pyentry コマンドを使うとローカルファイルシステム上にpyblosxom用 entryファイルを作成する訳ですが、これだけだと別途FTPアプリとか 立ち上げてファイルを転送しないといけないわけで、どうせならそこまで Meadow上でできたら便利かな、ということで作ってみました。 名付けて、 pyentry-ftp コマンド。.emacsへは下記のように定義します。 (defun pyentry-ftp () (interactive) (shell-command (concatenate 'string "~/src/python/ftp-pyentry.py" " " buffer-file-name))) 実際には、pythonで書いたスクリプト ftp-pyentry.py を呼び出して います。 ローカルファイルシ
1. 初めに 紫藤は xyzzy という emacs 風のエディタを使って HTML を書いています。 このエディターから抜け出さないでファンクションキーひとつでファイルをアップロードするスクリプトを 書いてみました。xyzzy Lisp を使ってアップロードの 入力ファイルを作るスクリプトを書き、 入力ファイルに基づいてアップロードを行うスクリプトを Python で書きました。 ここでは Python で書いた部分について解説します。 100 行ほどの短いスクリプトで書くことができます。 このスクリプトは短いのですが、それなりのテクニックを使っているので、 皆様の参考になればと思い、紹介します。 2. 仕様 2.1. 入出力ファイルを作るディレクトリ 入力ファイルおよび出力ファイルは環境変数 TEMP または TMP で定義されたディレクトリに 作成します。両方とも定義されていなければ
ローカルのPC環境で,サーバーにアップロードすることを前提としたファイル,例えばHTMLファイルやCGIスクリプトなどを編集するときは,表示の確認やスクリプトの動作確認のために,以下のプロセスを繰り返すことになります. ファイルを更新 サーバーにアップロード (動作|表示)確認 更新したファイルをサーバーにファイルをアップロードする際には,Linuxではftp,scpやrsyncといったコマンド,WindowsではFFFTP,WinSCPなどのツールを使うことが多いと思います.このとき問題になるのが たとえコマンド1回で済むとしても,ファイルを更新するたびにアップロードして確認するのが,激しく面倒くさい ということです.個人的にこの面倒くささを解消したくて,過去に色々と対応策を試しましたが,どれも一長一短だというのが結論です. リモートに編集環境を構築する場合の問題点 ファイルの編集に必要
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く