Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Shizuoka.py#3 LT
@aoshiman

2013.11.16
13年11月17日日曜日
お題:Pythonでクラウド上のスクリ
プトを実行する

13年11月17日日曜日
最初に
この話はUnix、Linux等でShellにBash、
Zshを使用していることが前提のお話しで
す。
それ以外の方、つまらないからといって私
に石を投げないで下さい。
※Python2.7.5 で確認しています

13年11月17日日...
ところでOSXを使用されている方、Homebrew
というパッケージ管理ソフト、使ってますか?

13年11月17日日曜日
なによりもスピードが要求されるこのご時世、
なるべくならソースをダウンロードして自前で
インストールとかしたくない。。
Homebrewならコマンド一発でインストー
ル、アンインストールできるし、とっても便
利。

13年11月17日日曜日
で、本日の話のきっかけが、
Homebrew自身のインストール方法
なのです。

13年11月17日日曜日
$ ruby -e “$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)”

インストール?
これをコピーしてターミナルに貼り付けて
実行してくれればOK

13年11月17日日曜日
かっこいい

13年11月17日日曜日
これをPythonでもやり
たい!!

13年11月17日日曜日
やってみる(そのあと解説)
python -c “$(curl -fsSL http://bit.ly/Shizuokapy3LT)”

13年11月17日日曜日
Tips①PythonのCオプションを使う
python -c command
command内のPythonコードを実行するインタプ
リタのインターフェイスオプション

13年11月17日日曜日
Tips②シェルスクリプトでコマンド
実行結果を変数に格納する
$(command)
echo $(pwd)
※バッククォートでも同じ結果になるが今回は
Homebrewのインストールコマンドに合わせてま
す

13年11月17日日曜日
Tips③Curlでリダイレクト先をどこまで
も追いかけて標準出力する
curl -fsSL
-f サーバエラーが生じても何も表示させない
-s サイレントモード(プログレスメーター等表示させ
ない)
-S サーレントモードで実行するが失敗時だ...
Tips① + ② + ③を組み合わせること
によりPythonでHomebrewのインス
トールのようなことが可能になりま
す。

13年11月17日日曜日
ところで、Wgetの場合はどうやるの?
Curlはデフォルトで標準出力してくれる
けど、Wgetはダウンロードしてしま
う。。

13年11月17日日曜日
↓このようにやります
python -c “$(wget -q -O - http://bit.ly/Shizuokapy3LT)”

-q サイレントモード
-O 保存先の指定
- 標準出力

13年11月17日日曜日
まとめ
python -c command command内のPythonコードを
実行する
シェルスクリプト $(command)は括弧内のコマンド実
行結果を変数に格納
Curlでリダイレクトありurlを標準出力
curl -fsSL
Wg...
これで自己紹介をするとかっこいいかも
※但し、悪用厳禁です

13年11月17日日曜日
python -c “$(wget -q -O - http://bit.ly/Shizuokapy3LTend)”

13年11月17日日曜日
ご清聴ありがとうございました(^^)/

13年11月17日日曜日
参考URL
•http://blog.supermomonga.com/articles/vim/put-cloud-source-to-args-invimshell.html
•http://www.hcn.zaq.ne.jp/___/un...
Upcoming SlideShare
Loading in …5
×

Pythonでクラウド上のスクリプトを実行する

2,821 views

Published on

  • Be the first to comment

Pythonでクラウド上のスクリプトを実行する

  1. 1. Shizuoka.py#3 LT @aoshiman 2013.11.16 13年11月17日日曜日
  2. 2. お題:Pythonでクラウド上のスクリ プトを実行する 13年11月17日日曜日
  3. 3. 最初に この話はUnix、Linux等でShellにBash、 Zshを使用していることが前提のお話しで す。 それ以外の方、つまらないからといって私 に石を投げないで下さい。 ※Python2.7.5 で確認しています 13年11月17日日曜日
  4. 4. ところでOSXを使用されている方、Homebrew というパッケージ管理ソフト、使ってますか? 13年11月17日日曜日
  5. 5. なによりもスピードが要求されるこのご時世、 なるべくならソースをダウンロードして自前で インストールとかしたくない。。 Homebrewならコマンド一発でインストー ル、アンインストールできるし、とっても便 利。 13年11月17日日曜日
  6. 6. で、本日の話のきっかけが、 Homebrew自身のインストール方法 なのです。 13年11月17日日曜日
  7. 7. $ ruby -e “$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)” インストール? これをコピーしてターミナルに貼り付けて 実行してくれればOK 13年11月17日日曜日
  8. 8. かっこいい 13年11月17日日曜日
  9. 9. これをPythonでもやり たい!! 13年11月17日日曜日
  10. 10. やってみる(そのあと解説) python -c “$(curl -fsSL http://bit.ly/Shizuokapy3LT)” 13年11月17日日曜日
  11. 11. Tips①PythonのCオプションを使う python -c command command内のPythonコードを実行するインタプ リタのインターフェイスオプション 13年11月17日日曜日
  12. 12. Tips②シェルスクリプトでコマンド 実行結果を変数に格納する $(command) echo $(pwd) ※バッククォートでも同じ結果になるが今回は Homebrewのインストールコマンドに合わせてま す 13年11月17日日曜日
  13. 13. Tips③Curlでリダイレクト先をどこまで も追いかけて標準出力する curl -fsSL -f サーバエラーが生じても何も表示させない -s サイレントモード(プログレスメーター等表示させ ない) -S サーレントモードで実行するが失敗時だけエラー表 示させる(-sと併用) -L リダイレクト追跡 13年11月17日日曜日
  14. 14. Tips① + ② + ③を組み合わせること によりPythonでHomebrewのインス トールのようなことが可能になりま す。 13年11月17日日曜日
  15. 15. ところで、Wgetの場合はどうやるの? Curlはデフォルトで標準出力してくれる けど、Wgetはダウンロードしてしま う。。 13年11月17日日曜日
  16. 16. ↓このようにやります python -c “$(wget -q -O - http://bit.ly/Shizuokapy3LT)” -q サイレントモード -O 保存先の指定 - 標準出力 13年11月17日日曜日
  17. 17. まとめ python -c command command内のPythonコードを 実行する シェルスクリプト $(command)は括弧内のコマンド実 行結果を変数に格納 Curlでリダイレクトありurlを標準出力 curl -fsSL Wgetでリダイレクトありurlを標準出力 wget -q -O - 13年11月17日日曜日
  18. 18. これで自己紹介をするとかっこいいかも ※但し、悪用厳禁です 13年11月17日日曜日
  19. 19. python -c “$(wget -q -O - http://bit.ly/Shizuokapy3LTend)” 13年11月17日日曜日
  20. 20. ご清聴ありがとうございました(^^)/ 13年11月17日日曜日
  21. 21. 参考URL •http://blog.supermomonga.com/articles/vim/put-cloud-source-to-args-invimshell.html •http://www.hcn.zaq.ne.jp/___/unix/curl_manpage.html •http://www.gnu.org/software/wget/manual/wget.html#Very-AdvancedUsage 13年11月17日日曜日

×