kbs的bbs系統灌水指令碼
2023年12月07日
基本上,是寫乙個指令碼,定好一系列步驟,並用輸出管道傳與 telnet 程式:
water.sh username passwd | telnet -8 forum.byr.edu.cn
這多虧了 telnet 的作者沒有考慮周全,標準輸入不從 /dev/tty 讀,而是從 stdin 讀。換成ssh就沒折了。
這裡面的point是: kbs有很多狀態,比如在看一篇文章時,是乙個狀態,這種狀態下,它從客戶接受輸入,它判斷輸入的符號串,看是 資料 還是命令,比如你按 ^w 時,表示寫好了你的文章,^w會使得客戶端傳送 027 (八進位制)到伺服器端,伺服器讀取後,發現是027,這是乙個^w命令,而不是資料,就採取想應的操作。
關鍵是,怎麼樣表示 ^w 的效果? 首先你可以用getchar()得到^w的整數值,列印出來看看是什麼,發現是027,然後用 echo 的 -e 引數: echo -e "\027" (見man),這就會將乙個值為027的ascii位元組傳過去。 另外,注意用 -n,因為kbs的很多都是raw模式的,按個鍵就響應的,所以,不必要輸入回車。
我在***論壇測試成功,指令碼如下:
#!/bin/sh
username="$1"
password="$2"
sleep 2 #等待 telnet 啟動完畢
echo "$username"
echo "$password"
sleep 2 #等待驗證通過,如果是繁忙的站點,這個值和下面各個sleep的值都要取大點。
# 下面三個在***站點上,跳過一系列需要按個鍵的地方,就是那種歡迎之類的,按下才跳過去。
echo
sleep 1
echo
sleep 1
echo
sleep 1
# 選擇哪個討論區
echo "s"
sleep 1
# 選擇某個版面(是xx論壇的應該能看出來這是哪個版)
echo "nic"
sleep 1
########## below for a single reply with one cow ##########
echo
sleep 1
echo -n "r"
sleep 1
cowsay "驚現某某兩個馬甲..."
echo -n -e "\027"
sleep 1
echo "f"
sleep 1
exit 0
########## below for a single reply with many cows ##########
#echo
#sleep 1
#echo -n "r"
#sleep 1
##for file in `ls /usr/share/cows`
#do# #cowsay -f $file "皮皮封我,好難過,bad,too bad"
# cowsay -f $file "小沛生日快樂,挖卡卡"
# echo
# echo
# echo
#done
#echo
#echo "自動灌水指令碼哈,測試測試,這個可以用於良好目的的,比如自動更新帖子嘿嘿"
#echo -n -e "\027"
#sleep 1
#echo "f"
#sleep 1
##exit 0
########## below for replys『 loop 用這個小心被封阿呵呵 ##########
#for file in `ls /usr/share/cows`
#do# echo
# sleep 1
# echo -n "r"
# sleep 1
# echo
# sleep 1
# cowsay -f $file "小沛生日快樂,挖卡卡"
# echo -n -e "\027"
# sleep 1
# echo "f"
# sleep 1
#done
#exit 0
over,當然了,你可以定製成任意的操作,只要你知道達成乙個結果的操作序列。
python 系統的監控指令碼
需求 1.獲取當前主機資訊,包含作業系統名,主機名,核心版本,硬體架構等 2.獲取開機時間和開機時長 3.獲取當前登陸使用者 import os import psutil from datetime import datetime print 主機資訊 center 50,info os.unam...
linux系統下的shell指令碼
bin bash 說明我需要啟用bin目錄下的bash直譯器解釋指令碼 將第乙個檔案拷貝到第二個檔案,如果出錯將錯誤輸出到 dev null 的空。if判斷cp的返回值是否為1,1為成功,0為失敗 if cp 1 2 dev null then 成功所做的事情 if cat dev null 1 清...
shell指令碼的系統資訊的應用
bin bash 系統資訊 system info 作業系統的版本號資訊 version ca t et c re dhat rel ease ech o 操作 系統的版 本號資訊 cat etc redhat release echo 作業系統的版本號資訊 cat e tc r edha t re...