Programming and Network Automation

[Study Notes] Shell & File Script Execution

Catatan hari-hari pertama ngoprek python. Python yang dipakai adalah Python 2.7, di Linux Ubuntu 14.4 (install di dalam VMWare).
Moga-moga bisa istiqomah belajar pythonnya 😀Metode python dieksekusi:

  1. Menggunakan shell
  2. Menggunakan file/script.

Python adalah interpreter language, jadi bisa langsung dijalankan tidak perlu compiler untuk compiling ke executable binary atau object.

Berikut contohnya untuk metode shell

Ketik python di terminal untuk memanggil python interpreter

packetnotes@ubuntu:~$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

Di shell ini tidak berlaku command system seperti ls, mv, rpm, dll.
Hanya berlaku syntax python.
Untuk keluar shell, tekan ctrl+D
Pertama belajar untuk membuat standard output ke terminal shell.

>>> print "halloo"
halloo
>>> print 'halloo'
halloo

Petik 1 atau 2 tidak masalah asal konsisten.
Tipe data tersimpan harus berupa data string yang ditandai dengan petik buka dan tutup, tanpa itu akan error

>>> print halloo
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'halloo' is not defined
>>> print 'jum'at
  File "<stdin>", line 1
    print 'jum'at
                ^
SyntaxError: invalid syntax

Jika ada kata yang ditengahnya ada tanda petik, akan error

>>> print 'jum'at
  File "<stdin>", line 1
    print 'jum'at
                ^
SyntaxError: invalid syntax

Untuk mengatasinya, gunakan tanda \ sebelum petik yang menandakan bahwa petik itu bukan penutup atau penanda string, tapi bagian dari karakter yang harus dicetak.

>>> print 'jum\'at'
jum'at

Eksekusi python menggunakan script (di Linux Ubuntu 14.04).
Buka aplikasi text editor favorit anda, saya menggunakan gedit bawaan dari linux

packetnotes@ubuntu:~$ gedit coba.py
packetnotes@ubuntu:~$ ls
coba.py  Documents  examples.desktop  Pictures  Templates
Desktop  Downloads  Music             Public    Videos

Jangan lupa untuk menggunakan ekstensi .py untuk setiap file python yang dibuat.
Cobapython

 

 

Buat file baru, coba.py. Lalu ketik syntax-nya.
Lalu eksekusi di python dengan cara memanggil memanggil interpreter python lalu nama file dan ekstensinya

packetnotes@ubuntu:~$ python coba.py
halo python
packetnotes@ubuntu:~$

File .py ini bisa diubah menjadi file executable, jadi bisa dieksekusi tanpa harus memanggil interpreter python terlebih dahulu.

Caranya dengan command seperti ini

packetnotes@ubuntu:~$ ./coba.py
bash: ./coba.py: Permission denied
packetnotes@ubuntu:~$

Permission denied karena permission file ini tidak executable.
Di cek permissionnya

packetnotes@ubuntu:~$ ll coba.py
-rw-rw-r-- 1 ubuntu ubuntu 21 Des  7 09:18 coba.py

Permissionnya owner read write, group read write, tapi everybody hanya read.

Untuk mengubahnya executable untuk semua, ketikan sudo chmod 755 coba.py

packetnotes@ubuntu:~$ sudo chmod 755 coba.py
[sudo] password for packetnotes: 
packetnotes@ubuntu:~$ ./coba.py
Warning: unknown mime-type for "halo python" -- using "application/octet-stream"
Error: no such file "halo python"
packetnotes@ubuntu:~$

Ketika dieksekusi permission tidak masalah, namun system bingung interpreternya apa.
Untuk membuat system mengerti bahwa interpreternya adalah python, maka harus ditambahkan header di python script.

Header ini berisi path dimana python diinstal. Di linux adalah di usr/bin/python. Di Windows bisa berbeda, tergantung tempat python diinstal.

usrbinpython

[spacer height=”20px”]Jadi hasilnya di header, jangan lupa di save.

[spacer height=”20px”]

usrbinheader

[spacer height=”20px”]Sekarang script coba.py bisa dieksekusi.

[spacer height=”20px”]

packetnotes@ubuntu:~$ ./coba.py
halo python
packetnotes@ubuntu:~$

Sekian dan terima kasih

1 Comment

Leave a comment