Terminal

顯示二進製文件後修復終端

  • December 26, 2021

我嘗試cat了帶有執行檔的命令:

cat /bin/ls

現在我在這個終端(Linux 控制台)中看不到任何字。我該如何解決?

例如,在 Unix/Linux 終端 (Bash) 中,您經常會使用命令morelesscat來查看文件。當您這樣做並且該文件不打算被查看(例如/bin/ls)時,您將獲得如下輸出:

                ss 二進制輸出

這裡發生的事情是您只是試圖查看一個程序文件。如上所述,不打算用標準查看器查看的執行檔。

方法 #1 - 重置

要解決此問題,您可以執行以下操作:

  1. 按幾次 Control + C ( Ctrl+ C)
  2. 鍵入命令reset並按輸入鍵

這通常會使您的終端恢復到更正常的模式。我還要提到一件事,當您執行上述步驟時,您將盲目地將它們輸入您的終端。所以只要確保你輸入正確。

方法#2 - 保持理智

正如@sendmoreinfo 評論中所建議的那樣,如果上述方法不起作用,您可能會使用以下命令獲得更好的運氣:

$ stty sane
$ tput rs1

確定文件的類型

順便說一句,如果您遇到一個文件並且不確定它是否會弄亂您的終端,您可以使用命令檢查該文件,該命令file將報告文件的類型。

例如,使用/bin/ls該文件顯示以下輸出:

$ file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped

引用自:https://unix.stackexchange.com/questions/79684