Google-colab-invoking-system-commands

提供:Dev Guides
移動先:案内検索

Google Colab-システムコマンドの呼び出し

Jupyterには、多くの一般的なシステム操作のショートカットが含まれています。 Colab Codeセルはこの機能をサポートしています。

簡単なコマンド

システムコマンドechoを使用するCodeセルに次のコードを入力します。

message = 'A Great Tutorial on Colab by finddevguides!'
greeting = !echo -e '$message\n$message'
greeting

さて、セルを実行すると、次の出力が表示されます-

['A Great Tutorial on Colab by finddevguides!', 'A Great Tutorial on Colab by finddevguides!']

リモートデータの取得

リモートサーバーからデータセットを読み込む別の例を見てみましょう。 あなたのコードセルに次のコマンドを入力してください-

!wget http://mlr.cs.umass.edu/ml/machine-learning-databases/adult/adult.data -P "/content/drive/My Drive/app"

コードを実行すると、次の出力が表示されます-

--2019-06-20 10:09:53-- http://mlr.cs.umass.edu/ml/machine-learning-databases/adult/adult.data
Resolving mlr.cs.umass.edu (mlr.cs.umass.edu)... 128.119.246.96
Connecting to mlr.cs.umass.edu (mlr.cs.umass.edu)|128.119.246.96|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3974305 (3.8M) [text/plain]
Saving to: ‘/content/drive/My Drive/app/adult.data.1’

adult.data.1 100%[===================>] 3.79M 1.74MB/s in 2.2s

2019-06-20 10:09:56 (1.74 MB/s) - ‘/content/drive/My Drive/app/adult.data.1’ saved [3974305/3974305]

メッセージが示すように、 adult.data.1 ファイルがドライブに追加されました。 これを確認するには、ドライブのフォルダーの内容を調べます。 あるいは、新しいコードセルに次のコードを入力します-

import pandas as pd
data = pd.read_csv("/content/drive/My Drive/app/adult.data.1")
data.head(5)

今すぐコードを実行すると、次の出力が表示されます-

リモートデータの取得

同様に、コマンドの先頭に感嘆符(!)を付けると、ほとんどのシステムコマンドをコードセルで呼び出すことができます。 起動できるコマンドの完全なリストを提供する前に、別の例を見てみましょう。

Gitリポジトリの複製

  • git *コマンドを使用して、GitHubリポジトリ全体をColabにクローンできます。 たとえば、kerasチュートリアルを複製するには、コードセルに次のコマンドを入力します-
!git clone https://github.com/wxs/keras-mnist-tutorial.git

コマンドが正常に実行された後、次の出力が表示されます-

Cloning into 'keras-mnist-tutorial'...
remote: Enumerating objects: 26, done.
remote: Total 26 (delta 0), reused 0 (delta 0), pack-reused 26
Unpacking objects: 100% (26/26), done.

リポジトリのクローンが作成されたら、Jupyterプロジェクト(例: keras.ipyabのMINST)で、ファイル名を右クリックし、[で開く/共同]メニューオプションを選択して、Colabでプロジェクトを開きます。

システムエイリアス

一般的な操作のショートカットのリストを取得するには、次のコマンドを実行します-

!ls/bin

以下に示すように、出力ウィンドウにリストが表示されます-

bash*             journalctl*       sync*
bunzip2*          kill*             systemctl*
bzcat*            kmod*             systemd@
bzcmp@            less*             systemd-ask-password*
bzdiff*           lessecho*         systemd-escape*
bzegrep@          lessfile@         systemd-hwdb*
bzexe*            lesskey*          systemd-inhibit*
bzfgrep@          lesspipe*         systemd-machine-id-setup*
bzgrep*           ln*               systemd-notify*
bzip2*            login*            systemd-sysusers*
bzip2recover*     loginctl*         systemd-tmpfiles*
bzless@           ls*               systemd-tty-ask-password-agent*
bzmore*           lsblk*            tar*
cat*              lsmod@            tempfile*
chgrp*            mkdir*            touch*
chmod*            mknod*            true*
chown*            mktemp*           udevadm*
cp*               more*             ulockmgr_server*
dash*             mount*            umount*
date*             mountpoint*       uname*
dd*               mv*               uncompress*
df*               networkctl*       vdir*
dir*              nisdomainname@    wdctl*
dmesg*            pidof@            which*
dnsdomainname@    ps*               ypdomainname@
domainname@       pwd*              zcat*
echo*             rbash@            zcmp*
egrep*            readlink*         zdiff*
false*            rm*               zegrep*
fgrep*            rmdir*            zfgrep*
findmnt*          run-parts*        zforce*
fusermount*       sed*              zgrep*
grep*             sh@               zless*
gunzip*           sh.distrib@       zmore*
gzexe*            sleep*            znew*
gzip*             stty*
hostname*         su*
*echo* および *wget* に対して行ったように、これらのコマンドのいずれかを実行します。 次の章では、以前に作成したPythonコードを実行する方法について説明します。