Nhiều việc có thể thực hiện dễ dàng và trực tiếp với bash. Hơn nữa có thể dễ dàng nhúng mã Python vào bash script và hưởng được điều tốt đẹp nhất của cả hai thế giới.
Chỉ cần dùng tham đối – của Python, sau đó là mã Python
#!/bin/bash
function current_datetime () {
python - <<END
from datetime import datetime
print (datetime.now())
END
}
Sau đó có thể gọi
current_datetime
hay gọi và lấy output
DT=$(current_datetime) echo Current date and time: $DT
Có thể truyền tham đối cho hàm Python qua biến môi trường
#!/bin/bash
function example (){
PYTHON_ARG="$1*$2" python3 - <<END
import os
args = str(os.environ['PYTHON_ARG']).split('*')
print ('Các tham đối là:',args)
END
}
Chú ý là hàm bên trên có dùng chuỗi unicode (utf-8) nên tốt nhất là dùng python3
Một cách truyền tham đối khác
function to_upper() {
python - "$1" << END
import sys
print (sys.argv[1].upper())
END
}
Sau đó gọi
to_upper "aBcDef"
để có output ABCDEF