นี่คือรันสคริปต์คำสั่งที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
runscript - ตัวแปลสคริปต์สำหรับ minicom
เรื่องย่อ
รันสคริปต์ ชื่อสคริปต์ [logfile [homedir]]
DESCRIPTION
รันสคริปต์ เป็นล่ามสคริปต์อย่างง่ายที่สามารถเรียกได้จากภายใน minicom
โปรแกรมสื่อสารเพื่อทำงานอัตโนมัติ เช่น เข้าสู่ระบบ Unix หรือรายการโปรดของคุณ
บีบีเอส.
การร้องขอ
โปรแกรมต้องการชื่อสคริปต์และตัวเลือกชื่อไฟล์และโฮมไดเร็กทอรีของผู้ใช้
เป็นอาร์กิวเมนต์ และคาดว่าอินพุตและเอาต์พุตจะเชื่อมต่อกับ "ปลายทางระยะไกล"
ระบบที่คุณกำลังเชื่อมต่อ ข้อความทั้งหมดจาก รันสคริปต์ มีไว้สำหรับหน้าจอท้องถิ่น
ถูกส่งตรงไปยัง สตเดอร์ เอาท์พุท ทั้งหมดนี้จะได้รับการดูแลโดยอัตโนมัติหากคุณเรียกใช้
ราคาเริ่มต้นที่ มินิคอม. พารามิเตอร์ logfile และโฮมไดเร็กทอรีใช้เพื่อบอก log . เท่านั้น
คำสั่งชื่อของไฟล์บันทึกและตำแหน่งที่จะเขียน หากละเว้น homedir
runscript ใช้ไดเร็กทอรีที่พบในตัวแปรสภาพแวดล้อม $HOME ถ้ายังเป็นไฟล์บันทึก
ละชื่อ คำสั่งบันทึกจะถูกละเว้น
KEYWORDS
Runscript รู้จักคำสั่งต่อไปนี้:
คาดหวังส่ง goto gosub return !< !
exit print set inc dec ถ้าหมดเวลา
บันทึกการโทรพักการนอนหลับอย่างละเอียด
ภาพรวม OF KEYWORDS
ส่ง
จะถูกส่งไปยังโมเด็ม ตามด้วย '\r' เป็นไปได้:
- ข้อความปกติ เช่น 'ส่งสวัสดี'
- ข้อความที่อยู่ในเครื่องหมายคำพูด เช่น 'send "hello world"'
ภายใน ลำดับต่อไปนี้เป็นที่รู้จัก:
\n - ขึ้นบรรทัดใหม่
\r - การคืนรถ
\กระดิ่ง
\b - แบ็คสเปซ
\c - อย่าส่งค่าเริ่มต้น '\r'
\f - ฟีดแบบฟอร์ม
\^ - อักขระ ^
\o - ส่งตัวอักษร o (o เป็นเลขฐานแปด)
สามารถใช้อักขระควบคุมในสตริงที่มีคำนำหน้า ^ (^A ถึง ^Z, ^[, ^ ^],
^^ และ ^_) หากคุณต้องการส่งอักขระ ^ คุณต้องนำหน้าด้วย \ escape
ตัวอักษร
อักขระฐานแปดอาจเป็นตัวเลขสี่หลักหรือลบด้วยอักขระที่ไม่ใช่ตัวเลข เช่น
อักขระ null อาจถูกส่งด้วย \0000 และ 'send 1234' เทียบเท่ากับ 'send
\0061234'.
นอกจากนี้ยังสามารถใช้ $(environment_variable) เช่น $(TERM) มินิคอมผ่านสาม
ตัวแปรสภาพแวดล้อมพิเศษ: $(LOGIN) ซึ่งเป็นชื่อผู้ใช้ $(PASS) ซึ่งก็คือ
รหัสผ่านตามที่กำหนดไว้ในรายการที่ถูกต้องของไดเร็กทอรีการโทรและ $(TERMLIN)
ซึ่งเป็นจำนวนบรรทัดเทอร์มินัลจริงบนหน้าจอของคุณ (นั่นคือ สถานะไลน์
ยกเว้น)
พิมพ์
พิมพ์ ไปยังหน้าจอท้องถิ่น ค่าเริ่มต้นตามด้วย '\r\n' ดูคำอธิบาย
ของ 'ส่ง' ด้านบน
ป้าย:
ประกาศป้ายกำกับ (ที่มีชื่อ 'label') เพื่อใช้กับ goto หรือ gosub
ข้ามไป
ข้ามไปที่อื่นในโปรแกรม
โกซับ
ข้ามไปที่อื่นในโปรแกรม เมื่อพบคำสั่ง 'return'
การควบคุมกลับไปที่คำสั่งหลังจาก gosub Gosub สามารถซ้อนกันได้
กลับ
กลับจากโกซับ
!
เรียกใช้เชลล์สำหรับคุณโดยที่ 'คำสั่ง' ถูกดำเนินการ ในทางกลับกัน ตัวแปร '$?' เป็น
ตั้งค่าเป็นสถานะออกของคำสั่งนี้ เพื่อให้คุณสามารถทดสอบได้ในภายหลังโดยใช้ 'if'
!<
เรียกใช้เชลล์สำหรับคุณโดยที่ 'คำสั่ง' ถูกดำเนินการ เอาต์พุต stdout ของคำสั่ง
การดำเนินการจะถูกส่งไปยังโมเด็ม ในทางกลับกัน ตัวแปร '$?' ถูกกำหนดให้เป็นทางออก
สถานะของคำสั่งนี้ เพื่อให้คุณสามารถทดสอบได้ในภายหลังโดยใช้ 'if'
ทางออก [ค่า]
ออกจาก "runscript" ด้วยสถานะการออกที่เป็นทางเลือก (ค่าเริ่มต้น 1)
ชุด
ตั้งค่าของ (ซึ่งเป็นตัวอักษร az ตัวเดียว) ถึงค่า . ถ้า
ไม่มีอยู่ มันจะถูกสร้างขึ้น สามารถเป็นค่าจำนวนเต็มหรือ
ตัวแปรอื่น
Inc
เพิ่มค่าของ โดยหนึ่ง
ธันวาคม
ลดค่าของ โดยหนึ่ง
if
การดำเนินการตามเงื่อนไขของ . สามารถเป็น <, >, != หรือ = เช่น 'ถ้า > 3
ไปที่ exitlabel'
การหยุดพักชั่วคราว
ตั้งค่าการหมดเวลาทั่วโลก โดยค่าเริ่มต้น 'runscript' จะออกหลังจาก 120 วินาที นี้
สามารถเปลี่ยนได้ด้วยคำสั่งนี้ คำเตือน: คำสั่งนี้ทำหน้าที่ต่างกันภายใน an
'คาดหวัง' คำสั่ง แต่เพิ่มเติมเกี่ยวกับที่ในภายหลัง
ละเอียด
โดยค่าเริ่มต้น นี่คือ 'เปิด' หมายความว่าอะไรก็ตามที่อ่านจากโมเด็ม
โดย 'runscript' ถูกสะท้อนไปที่หน้าจอ นี้เพื่อให้คุณสามารถดูสิ่งที่
'runscript' กำลังทำอยู่
นอนหลับ
ระงับการดำเนินการสำหรับ วินาที
คาดหวัง
คาดหวัง {
แบบแผน [คำสั่ง]
แบบแผน [คำสั่ง]
[หมดเวลา [คำแถลง] ]
....
}
คำสั่งที่สำคัญที่สุดของทั้งหมด คาดหวังให้อ่านจากอินพุตจนกว่าจะอ่าน
รูปแบบที่ตรงกับรูปแบบใดรูปแบบหนึ่งที่ระบุ หากคาดหวังพบตัวเลือก
คำสั่งหลังจากรูปแบบนั้นก็จะรันมัน มิฉะนั้นค่าเริ่มต้นคือเพียง
หลุดพ้นจากความคาดหวัง 'รูปแบบ' เป็นสตริง เช่นเดียวกับใน 'ส่ง' (ดูด้านบน)
โดยปกติคาดว่าจะหมดเวลาใน 60 วินาทีและเพิ่งออก แต่สามารถเปลี่ยนแปลงได้
ด้วยคำสั่งหมดเวลา
ทำลาย
แยกจากคำสั่ง 'คาดหวัง' ซึ่งปกติแล้วจะมีประโยชน์เพียงเป็นการโต้แย้งกับ
'หมดเวลา' ภายในที่คาดไว้ เนื่องจากการดำเนินการเริ่มต้นของการหมดเวลาคือการออก
โดยด่วน
โทรศัพท์
โอนการควบคุมไปยังไฟล์สคริปต์อื่น เมื่อไฟล์สคริปต์นั้นเสร็จสิ้นโดยไม่มี
ข้อผิดพลาด สคริปต์เดิมจะดำเนินต่อไป
เข้าสู่ระบบ
เขียนข้อความไปยังไฟล์บันทึก
หมายเหตุ
หากคุณต้องการให้สคริปต์ของคุณออกจาก minicom (เช่น เมื่อคุณใช้ minicom เพื่อโทรออก)
เพิ่ม ISP ของคุณแล้วเริ่มเซสชัน PPP หรือ SLIP จากสคริปต์) ลองใช้คำสั่ง "!
killall -9 minicom" เป็นคำสั่งสคริปต์สุดท้าย ตัวเลือก -9 ควรป้องกันไม่ให้ minicom จาก
วางสายและรีเซ็ตโมเด็มก่อนออกจาก
ฉันไม่คิดว่านี่เป็นข้อมูลเพียงพอที่จะทำให้คุณเป็น 'โปรแกรมเมอร์' ที่มีประสบการณ์ใน
'runscript' แต่เมื่อรวมกับตัวอย่างแล้ว การเขียนที่มีประโยชน์ก็ไม่ควรยากเกินไป
ไฟล์สคริปต์ สิ่งต่างๆ จะง่ายขึ้นหากคุณมีประสบการณ์กับ BASIC NS มินิคอม แหล่ง
รหัสมาพร้อมกับสคริปต์ตัวอย่างสองแบบ สคริปต์สาธิต และ ยูนิกซ์ล็อคอิน. โดยเฉพาะอย่างยิ่ง
อันสุดท้ายเป็นฐานที่ดีในการสร้างสคริปต์ของคุณเอง
ใช้ runscript ออนไลน์โดยใช้บริการ onworks.net