18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

腳本美化高手之輕松實(shí)現(xiàn)文本顏色和背景定制的酷炫Shell技巧

馬哥Linux運(yùn)維 ? 來源:馬哥Linux運(yùn)維 ? 2024-12-06 10:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

shell腳本中 echo 和 printf 都可以輸出內(nèi)容。示例1:

echo -e "?33[43;35m david use echo say Hello World ?33[0m 
" 

printf "?33[44;36m david use printf say Hello World ?33[0m 
" 

echo -e "?33[47;30;5m david use echo say ?33[0m Hello World 
"

輸出效果如下:
92901f44-b159-11ef-93f3-92fbcf53809c.gif
它的格式是這樣的:

echo -e "?33[字背景顏色;字體顏色m 字符串 ?33[0m"  或者
printf "?33[字背景顏色;字體顏色m 字符串 ?33[0m"  或者
echo -e "?33[字背景顏色;字體顏色m;ascii碼m 字符串 ?33[0m 字符串(can null) 
" 

格式說明

shell腳本中echo命令是內(nèi)容顯示,echo顯示帶顏色需要使用參數(shù) -e
格式如下:
echo -e "?33[字背景顏色;文字顏色m字符串?33[0m"
例如:
echo -e "?33[41;36m something here ?33[0m"
其中41的位置代表底色, 36的位置是代表字的顏色

注:

1、字背景顏色和文字顏色之間是英文的";"

2、文字顏色后面有個(gè)m

3、字符串前后可以沒有空格,如果有的話,輸出也是同樣有空格

特效可以疊加,需要使用“;”隔開,例如:閃爍+下劃線+白底色+黑字為 ?33[5;4;47;30m閃爍+下劃線+白底色+黑字為?33[0m

再來看示例1的第3個(gè)命令:

echo -e "?33[47;30;5m david use echo say ?33[0m Hello World 
" 

這個(gè)命令解釋:

47 代表背景色為白色,
30 代表字體為黑色,
5 代表字體閃爍,
0 代表關(guān)閉所有屬性
輸出字符 “david use echo say”,然后重新設(shè)置屏幕到缺省設(shè)置,輸出字符 “Hello World”后顏色回復(fù)正常。

-e是echo的一個(gè)可選項(xiàng),用于激活特殊字符的解析器, 也就是對反斜線轉(zhuǎn)義符(即)的解釋。?33引導(dǎo)非常規(guī)字符序列。意味著設(shè)置屬性然后結(jié)束非常規(guī)字符序列,這里起效果的字符是47;30;5和0。修改47;30;5可以生成不同顏色的組合,數(shù)值和編碼的前后順序沒有關(guān)系。

組合命令:

示例2,組合命令:

echo -e "?33[20;1H?33[1;4;32m david use echo say ?33[0m Hello World 
"

這行命令首先?33[20;1H將光標(biāo)移動到終端第20行第1列,之后的?33[1;4;32m將文本屬性設(shè)置為高亮、帶下劃線且顏色為綠色,然后輸出Hello,world;最后?33[0m將終端屬性設(shè)為缺省,這樣就不會看到連命令完成后的命令提示符也變了樣兒了。 輸出效果如下:
92a8416e-b159-11ef-93f3-92fbcf53809c.png

我們可以通過各種命令的組合可以實(shí)現(xiàn)對終端輸出地復(fù)雜控制。

輸出特效格式控制:

?33[0m  關(guān)閉所有屬性  
?33[1m   設(shè)置高亮度  
?3[4m   下劃線  
?33[5m   閃爍  
?33[7m   反顯  
?33[8m   消隱  
?33[30m   --   ?33[37m   設(shè)置前景色  
?33[40m   --   ?33[47m   設(shè)置背景色

例:
echo -e "?33[31m 紅色字 ?33[0m"
echo -e "?33[34m 黃色字 ?33[0m" 
echo -e "?33[41;33m 紅底黃字 ?33[0m"
echo -e "?33[41;37m 紅底白字 ?33[0m" 

字顏色范圍(前景顏色):30—–39

echo -e "?33[30m 黑色字 ?33[0m" 
echo -e "?33[31m 紅色字 ?33[0m" 
echo -e "?33[32m 綠色字 ?33[0m"
echo -e "?33[33m 黃色字 ?33[0m"
echo -e "?33[34m 藍(lán)色字 ?33[0m"
echo -e "?33[35m 紫色字 ?33[0m" 
echo -e "?33[36m 天藍(lán)字 ?33[0m" 
echo -e "?33[37m 白色字 ?33[0m" 
38:在缺省的前景顏色上設(shè)置下劃線 
39:在缺省的前景顏色上關(guān)閉下劃線

補(bǔ)充:上面的例子中,每行后面都有 ?33[0m ,是為了使終端顯示的顏色恢復(fù)到修改背景和字體顏色之前的狀態(tài)。

字背景顏色范圍(背景顏色):40~47

40:黑 
41:深紅 
42:綠 
43:黃色 
44:藍(lán)色 
45:紫色 
46:深綠 
47:白色 
49:設(shè)置缺省黑色背景

光標(biāo)位置等的格式控制:

33[nA 光標(biāo)上移n行 
33[nB 光標(biāo)下移n行 
33[nC 光標(biāo)右移n行 
33[nD 光標(biāo)左移n行 
33[y;xH設(shè)置光標(biāo)位置 
33[2J 清屏 
33[K 清除從光標(biāo)到行尾的內(nèi)容 
33[s 保存光標(biāo)位置 
33[u 恢復(fù)光標(biāo)位置 
33[?25l 隱藏光標(biāo) 
33[?25h 顯示光標(biāo)

示例3:

echo -e "?33[0m none ?33[0m"
echo -e "?33[30m black ?33[0m"
echo -e "?33[1;30m dark_gray ?33[0m"
echo -e "?33[0;34m blue ?33[0m"
echo -e "?33[1;34m light_blue ?33[0m"
echo -e "?33[0;32m green ?33[0m"
echo -e "?33[1;32m light_green ?33[0m"
echo -e "?33[0;36m cyan ?33[0m"
echo -e "?33[1;36m light_cyan ?33[0m"

輸出效果如下:
92c91466-b159-11ef-93f3-92fbcf53809c.png

echo -e "?33[0;31m red ?33[0m"
echo -e "?33[1;31m light_red ?33[0m"
echo -e "?33[0;35m purple ?33[0m"
echo -e "?33[1;35m light_purple ?33[0m"
echo -e "?33[0;33m brown ?33[0m"
echo -e "?33[1;33m yellow ?33[0m"
echo -e "?33[0;37m light_gray ?33[0m"
echo -e "?33[1;37m white ?33[0m"

輸出效果如下:
92db0c8e-b159-11ef-93f3-92fbcf53809c.png

echo -e "?33[40;37m 黑底白字 ?33[0m"
echo -e "?33[41;30m 紅底黑字 ?33[0m"
echo -e "?33[42;34m 綠底藍(lán)字 ?33[0m"
echo -e "?33[43;34m 黃底藍(lán)字 ?33[0m"
echo -e "?33[44;30m 藍(lán)底黑字 ?33[0m"
echo -e "?33[45;30m 紫底黑字 ?33[0m"
echo -e "?33[46;30m 天藍(lán)底黑字 ?33[0m"
echo -e "?33[47;34m 白底藍(lán)字 ?33[0m"
echo -e "?33[4;31m 下劃線紅字 ?33[0m"
echo -e "?33[5;31m 紅字在閃爍 ?33[0m"
echo -e "?33[8m 消隱 ?33[0m "

輸出效果如下:
92e652ba-b159-11ef-93f3-92fbcf53809c.gif

范圍參考:

0 重新設(shè)置屬性到缺省設(shè)置
1 設(shè)置粗體
2 設(shè)置一半亮度(模擬彩色顯示器的顏色)
4 設(shè)置下劃線(模擬彩色顯示器的顏色)
5 設(shè)置閃爍
7 設(shè)置反向圖象
8 消隱 
22 設(shè)置一般密度
24 關(guān)閉下劃線
25 關(guān)閉閃爍
27 關(guān)閉反向圖象

// 字體顏范圍(前景顏色):30~39
30:黑 
31:紅 
32:綠 
33:黃 
34:藍(lán)色 
35:紫色 
36:深綠 
37:白色 

38:在缺省的前景顏色上設(shè)置下劃線
39:在缺省的前景顏色上關(guān)閉下劃線

// 字背景顏色范圍(背景顏色):40~49 
40:黑 
41:深紅 
42:綠 
43:黃色 
44:藍(lán)色 
45:紫色 
46:深綠 
47:白色 

nA 光標(biāo)上移n行 
nB 光標(biāo)下移n行 
nC 光標(biāo)右移n行 
nD 光標(biāo)左移n行 
y;xH設(shè)置光標(biāo)位置 
2J 清屏 
K 清除從光標(biāo)到行尾的內(nèi)容 
s 保存光標(biāo)位置 
u 恢復(fù)光標(biāo)位置 
?25l 隱藏光標(biāo) 
?25h 顯示光標(biāo)

預(yù)先定義顏色變量

如果是通過bash腳本執(zhí)行,多次頻繁的輸出展示,那么可以通過變量簡化樣式格式引用:

#! /bin/bash
## author:xiongzaiqiren

RED_COLOR='E[1;31m'  
YELOW_COLOR='E[1;33m' 
BLUE_COLOR='E[1;34m'  
RESET='E[0m'

#需要使用echo -e
echo -e  "${RED_COLOR}===david say red color===${RESET}"
echo -e  "${YELOW_COLOR}===david say yelow color===${RESET}"
echo -e  "${BLUE_COLOR}===david say green color===${RESET}"

輸出效果如下:
92fd236e-b159-11ef-93f3-92fbcf53809c.png

將自定義顏色格式定義成變量,然后在具體工作是運(yùn)用的實(shí)例。
定義顏色動作, 把echo -en也定義到變量中。使用時(shí)直接調(diào)用顏色動作即可。
倒計(jì)時(shí)(利用 來實(shí)現(xiàn)回到行首覆蓋輸出)

#! /bin/bash
## author:xiongzaiqiqren

##### 定義顏色動作, 把echo -en也定義到變量中
SETCOLOR_BLACK="echo -en \E[1;30m"
SETCOLOR_FAILURE="echo -en \E[1;31m"
SETCOLOR_SUCCESS="echo -en \E[1;32m"
SETCOLOR_WARNING="echo -en \E[1;33m"
SETCOLOR_INFO="echo -en \E[1;34m"
SETCOLOR_REMIND="echo -en \E[1;35m"
SETCOLOR_BUG="echo -en \E[1;36m"
SETCOLOR_WHITE="echo -en \E[1;37m"
SETCOLOR_NORMAL="echo  -en \E[0;39m"
SETCOLOR_FLICKER="echo  -en \E[5m"
 
##### 使用時(shí)直接調(diào)用顏色動作即可
$SETCOLOR_BLACK && echo BLACK
$SETCOLOR_FAILURE && echo FAILURE   
$SETCOLOR_SUCCESS && echo SUCCESS   
$SETCOLOR_WARNING && echo WARNING   
$SETCOLOR_INFO && echo INFO
$SETCOLOR_BUG && echo BUG
$SETCOLOR_REMIND && echo REMIND
$SETCOLOR_WHITE && echo WHITE
$SETCOLOR_NORMAL  && echo NORMAL

$SETCOLOR_FLICKER  && echo FLICKER
$SETCOLOR_NORMAL  && echo NORMAL


##### 其他測試
echo "輸出內(nèi)容,行末自帶換行符";
echo -n "輸出內(nèi)容,取消行末換行符(內(nèi)容輸出后不換行)";
echo "這是接著前面的(沒有新的行)";

echo -e "e[1;33;5m 閃爍文字 e[0m"

# 倒計(jì)時(shí)(利用
來實(shí)現(xiàn)回到行首覆蓋輸出)
for i in {1..100}; do echo -en "
 $i%"; sleep 1; done;

以上代碼在Linux服務(wù)器上保存為 myDisplay.sh 文件,并賦予可執(zhí)行權(quán)限。然后看到效果。
運(yùn)行結(jié)果如圖:
930cb6da-b159-11ef-93f3-92fbcf53809c.gif

鏈接:https://www.cnblogs.com/xiongzaiqiren/p/16895162.html

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    373

    瀏覽量

    25010
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    405

    瀏覽量

    28986

原文標(biāo)題:腳本美化高手:輕松實(shí)現(xiàn)文本顏色和背景定制的酷炫Shell技巧

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    shell基本介紹及常用命令shell基本介紹

    執(zhí)行結(jié)果呈現(xiàn)給用戶;同時(shí)Shell也是一種解釋性的編程語言或者腳本語言,開發(fā)容易可以在短時(shí)間內(nèi)完成功能強(qiáng)大又好用的腳本,可以在不同的系統(tǒng)上移植非常方便。Shell的特性不同的發(fā)行版本使
    發(fā)表于 09-28 09:05

    【RA-Eco-RA6M4開發(fā)板評測】移植shell實(shí)現(xiàn)命令交互

    代碼見 一. 前言前面我們實(shí)現(xiàn)了標(biāo)準(zhǔn)輸入輸出,為了進(jìn)一步方便交互調(diào)試,我們繼續(xù)來實(shí)現(xiàn)一個(gè)精簡的shellShell實(shí)現(xiàn)參考https:
    發(fā)表于 07-19 22:47

    【微五科技CF5010RBT60開發(fā)板試用體驗(yàn)】基于FIFO的串口驅(qū)動移植xprintf實(shí)現(xiàn)標(biāo)準(zhǔn)輸入輸出與shell實(shí)現(xiàn)

    本文分享基于FIFO實(shí)現(xiàn)串口驅(qū)動,方便提供好用的串口收發(fā)接口,并基于串口驅(qū)動移植xprintf實(shí)現(xiàn)標(biāo)準(zhǔn)輸入輸出 FIFO的實(shí)現(xiàn)參考公眾號文章超級精簡系列十三:超級精簡的循環(huán)FIFO,
    發(fā)表于 06-27 22:37

    鴻蒙5開發(fā)寶藏案例分享---一多開發(fā)實(shí)例(圖片美化

    案例,特別是這個(gè)圖片美化應(yīng)用的完整實(shí)現(xiàn)方案,必須立刻分享給大家!(搓手手.gif) ?** 案例背景:圖片美化應(yīng)用** 這個(gè)案例完美展示了如何用****一套代碼適配手機(jī)/折疊屏/平板/
    發(fā)表于 06-03 16:09

    Shell腳本入門指南

    Shell 是一塊包裹著系統(tǒng)核心的殼,處于操作系統(tǒng)的最外層,與用戶直接對話,把用戶的輸入, 解釋給操作系統(tǒng),然后處理操作系統(tǒng)的輸出結(jié)果,輸出到屏幕給與用戶看到結(jié)果。
    的頭像 發(fā)表于 06-03 10:47 ?857次閱讀
    <b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>入門指南

    樹莓派新手必看!在樹莓派上編寫和運(yùn)行 Shell 腳本!

    執(zhí)行的操作。Shell腳本只是一個(gè)文本文件,包含一系列按順序執(zhí)行的Shell(命令行)命令,就好像這些命令直接在命令行中輸入一樣
    的頭像 發(fā)表于 03-25 09:28 ?757次閱讀
    樹莓派新手必看!在樹莓派上編寫和運(yùn)行 <b class='flag-5'>Shell</b> <b class='flag-5'>腳本</b>!

    【ELF 2學(xué)習(xí)板試用】命令行功能測試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目-實(shí)現(xiàn)開機(jī)起動

    接上文【ELF 2學(xué)習(xí)板試用】命令行功能測試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目 Linux 系統(tǒng)下 init 系統(tǒng) 大多數(shù) Linux 發(fā)行版的 init 系統(tǒng)是和 System V 相兼容
    發(fā)表于 02-11 11:24

    背景抑制光電開關(guān)的設(shè)計(jì)及應(yīng)用

    算法程序?qū)Σ杉降男盘栠M(jìn)行分析處理,區(qū)分目標(biāo)物體反射光與背景反射光。 算法實(shí)現(xiàn)與優(yōu)化 ·閾值比較法 :采用閾值比較法實(shí)現(xiàn)背景抑制,即設(shè)定合適的閾值,當(dāng)采集到的信號強(qiáng)度超過該閾值且在特定
    發(fā)表于 01-11 13:43

    嵌入式學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-shell編程入門提取字符并設(shè)置rtc時(shí)間

    awk用法 awk是一款文本處理工具,通常在Unix和Linux操作系統(tǒng)中使用,用于以行為單位對文本進(jìn)行處理和操作。它可以讀取輸入文本,對其進(jìn)行處理,生成報(bào)表、統(tǒng)計(jì)信息等,并將結(jié)果輸出到標(biāo)準(zhǔn)輸出設(shè)備
    發(fā)表于 12-12 17:26

    飛凌嵌入式ElfBoard ELF 1板卡-shell編程入門提取字符并設(shè)置rtc時(shí)間

    awk用法 awk是一款文本處理工具,通常在Unix和Linux操作系統(tǒng)中使用,用于以行為單位對文本進(jìn)行處理和操作。它可以讀取輸入文本,對其進(jìn)行處理,生成報(bào)表、統(tǒng)計(jì)信息等,并將結(jié)果輸出到標(biāo)準(zhǔn)輸出設(shè)備
    發(fā)表于 12-11 16:49

    飛凌嵌入式ElfBoard ELF 1板卡-自動化點(diǎn)亮LED燈shell點(diǎn)燈

    使用前面一節(jié)寫的shell腳本led.sh,在終端執(zhí)行命令:root@ELF1:~# chmod 777 led.sh root@ELF1:~# ./led.sh 執(zhí)行該腳本后,三個(gè) LED 燈會以每秒亮滅一次的節(jié)奏同步閃爍。
    發(fā)表于 12-06 13:52

    Linux從零到精通:最簡單的Shell腳本入門教程

    通過簡單的命令和腳本實(shí)現(xiàn)對系統(tǒng)的靈活控制和自動化管理。 shell腳本前言 shell腳本入門
    的頭像 發(fā)表于 12-05 09:56 ?2142次閱讀
    Linux從零到精通:最簡單的<b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>入門教程

    TCSH shell 編程入門

    ICer從業(yè)人員最先需要掌握的語言,就是linux shell語言。TCSH是ICer使用最多的Shell語言,可以說ICer入門語言從TCSH開始。
    發(fā)表于 11-01 10:45 ?0次下載

    PowerPAD?輕松實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《PowerPAD?輕松實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 10-29 10:08 ?0次下載
    PowerPAD?<b class='flag-5'>輕松</b><b class='flag-5'>實(shí)現(xiàn)</b>

    100Hz跟蹤難實(shí)現(xiàn)? 慧視定制RK3588輕松破局

    高幀率的相機(jī)能夠捕捉更多的目標(biāo)特征細(xì)節(jié),在目標(biāo)跟蹤時(shí)能夠提供更多的信息,實(shí)現(xiàn)更加穩(wěn)定的目標(biāo)跟蹤效果。RK3588擁有6.0TOPS的工業(yè)級算力,因此在定制算法、定制硬件等輔助下,能夠實(shí)現(xiàn)
    的頭像 發(fā)表于 10-25 08:09 ?1985次閱讀
    100Hz跟蹤難<b class='flag-5'>實(shí)現(xiàn)</b>?  慧視<b class='flag-5'>定制</b>RK3588<b class='flag-5'>輕松</b>破局