0
作爲練習,我做了一個shell腳本,在屏幕上輸出一條彩色消息。我試圖使用ANSI顏色代碼,但內容本身會輸出。在Linux上,爲什麼'echo'不使用ANSI顏色代碼,而是'print'可以?
我的代碼:
#!/bin/bash
echo "\033[1;37;42m SUCCESS! \033[0m"
輸出:
\033[1;37;42m SUCCESS! \033[0m
但是,使用 '打印' 不工作:
#!/bin/bash
print "\033[1;37;42m SUCCESS! \033[0m \n"
輸出(帶白色字體+綠色背景):
SUCCESS!
我在紅帽企業Linux服務器版本6.5(聖地亞哥)和Raspbian Jessie Lite 4.4上測試了這一點,並得到了相同的結果。據我所知,從我經歷的所有搜索引擎結果來看,'echo'和'print'是相同的,'echo'包含換行符,'print'不包含。爲什麼在這種情況下會有所不同?
這表現的很出色。謝謝一堆!我會upvote你,但因爲我的帳戶是新的,它不會馬上出現:/ – Shelley
您可以將其標記爲答案。 :) – Les