Linux
如果 cat’d 會弄亂我的終端並產生大量噪音,哪些字元?
我編寫了一個
cat
名為 safecat的包裝腳本,它可以防止我意外cat
讀取二進製文件並從我的 PC 揚聲器中聽到大量尖叫聲。現在它認為一個文件是二進製文件,如果第一頁中 30% 或更多的字元是非文本字元(ASCII 範圍 32-127 和\n
,\r
,\t
,\b
),它將拒絕對它進行分類。我突然想到,只要我沒有聽到刺耳的聲音並且之後我的終端沒有搞砸,我真的對二進製文件沒有任何問題。是否有一組字元或字元序列我可以專門尋找並拒絕貓(如果存在)?那會更健壯。
safecat.py 來源:
我通過使用 less 作為尋呼機而不是 cat 並使用回滾來解決這個問題。
Less 警告你“這個文件可能是二進製文件,繼續嗎?
$$ y/N $$”。
Try
cat -vet
,這將確保所有控製字元都轉換為安全的螢幕顯示。是的,我承認我是這樣記得的,因為這很有趣;)