Google Colab - wywoływanie poleceń systemowych
Jupyter zawiera skróty do wielu typowych operacji systemowych. Komórka Colab Code obsługuje tę funkcję.
Proste polecenia
Wprowadź następujący kod w komórce Code, która używa polecenia systemowego echo.
message = 'A Great Tutorial on Colab by Tutorialspoint!'
greeting = !echo -e '$message\n$message'
greeting
Teraz, jeśli uruchomisz komórkę, zobaczysz następujące dane wyjściowe -
['A Great Tutorial on Colab by Tutorialspoint!', 'A Great Tutorial on Colab by Tutorialspoint!']
Pobieranie danych zdalnych
Spójrzmy na inny przykład, który ładuje zestaw danych ze zdalnego serwera. Wpisz następujące polecenie w komórce Kod -
!wget http://mlr.cs.umass.edu/ml/machine-learning-databases/adult/adult.data -P "/content/drive/My Drive/app"
Jeśli uruchomisz kod, zobaczysz następujące dane wyjściowe -
--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]
Jak mówi wiadomość, plik adult.data.1plik został dodany do dysku. Możesz to sprawdzić, sprawdzając zawartość folderu na dysku. Alternatywnie wpisz następujący kod w nowej komórce Kod -
import pandas as pd
data = pd.read_csv("/content/drive/My Drive/app/adult.data.1")
data.head(5)
Uruchom kod teraz, a zobaczysz następujące dane wyjściowe -
Podobnie, większość poleceń systemowych można wywołać w komórce kodu, poprzedzając polecenie wykrzyknikiem (!). Spójrzmy na inny przykład, zanim podamy pełną listę poleceń, które możesz wywołać.
Klonowanie repozytorium Git
Możesz sklonować całe repozytorium GitHub do Colab przy użyciu rozszerzenia gitKomenda. Na przykład, aby sklonować samouczek keras, wpisz następujące polecenie w komórce Kod -
!git clone https://github.com/wxs/keras-mnist-tutorial.git
Po pomyślnym uruchomieniu polecenia zobaczysz następujące dane wyjściowe -
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.
Po sklonowaniu repozytorium zlokalizuj w nim projekt Jupyter (np. MINST w keras.ipyab), kliknij prawym przyciskiem myszy nazwę pliku i wybierz Open With / Colaboratory opcja menu, aby otworzyć projekt w Colab.
Aliasy systemowe
Aby uzyskać listę skrótów do typowych operacji, wykonaj następujące polecenie -
!ls /bin
Zobaczysz listę w oknie wyjściowym, jak pokazano poniżej -
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*
Wykonaj dowolne z tych poleceń, tak jak to zrobiliśmy dla echo i wget. W następnym rozdziale zobaczymy, jak wykonać wcześniej utworzony kod Pythona.