อาร์กิวเมนต์ Fabric เข้าใจได้ด้วยการแยกวิเคราะห์สตริงขั้นพื้นฐานดังนั้นคุณต้องระมัดระวังเล็กน้อยเกี่ยวกับวิธีการส่ง
นี่คือตัวอย่างบางส่วนของวิธีต่างๆในการส่งผ่านอาร์กิวเมนต์ไปยังฟังก์ชันทดสอบต่อไปนี้:
@task
def test(*args, **kwargs):
print("args:", args)
print("named args:", kwargs)
$ fab "test:hello world"
('args:', ('hello world',))
('named args:', {})
$ fab "test:hello,world"
('args:', ('hello', 'world'))
('named args:', {})
$ fab "test:message=hello world"
('args:', ())
('named args:', {'message': 'hello world'})
$ fab "test:message=message \= hello\, world"
('args:', ())
('named args:', {'message': 'message = hello, world'})
ฉันใช้เครื่องหมายคำพูดคู่ที่นี่เพื่อนำเปลือกออกจากสมการ แต่อัญประกาศเดี่ยวอาจดีกว่าสำหรับบางแพลตฟอร์ม นอกจากนี้โปรดสังเกตการ Escape สำหรับอักขระที่ Fabric พิจารณาตัวคั่น
รายละเอียดเพิ่มเติมในเอกสาร:
http://docs.fabfile.org/en/1.14/usage/fab.html#per-task-arguments