學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

linux echo指令學(xué)習(xí)

時間: 志藝942 分享

  echo默認(rèn)會將結(jié)果字符串送往標(biāo)準(zhǔn)輸出。輸出的字符串間以空白字符隔開, 并在最后加上換行號。接下來是小編為大家收集的linux echo指令學(xué)習(xí),歡迎大家閱讀:

  linux echo指令學(xué)習(xí)

  功能說明:顯示文字。

  語 法:echo [-ne][字符串] 或 echo [--help][--version]

  補(bǔ)充說明:echo默認(rèn)會將結(jié)果字符串送往標(biāo)準(zhǔn)輸出。輸出的字符串間以空白字符隔開, 并在最后加上換行號。

  參 數(shù):

  -n 不要在最后自動換行

  -e 若字符串中出現(xiàn)以下字符,則特別加以處理,而不會將它當(dāng)成一般文字輸出:

  \a 發(fā)出警告聲;

  \b 刪除前一個字符;

  \c 最后不加上換行符號;

  \f 換行但光標(biāo)仍舊停留在原來的位置;

  \n 換行且光標(biāo)移至行首;

  \r 光標(biāo)移至行首,但不換行;

  \t 插入tab;

  \v 與\f相同;

  \ 插入\字符;

  \nnn 插入nnn(八進(jìn)制)所代表的ASCII字符;

  --help 顯示幫助

  --version 顯示版本信息

  echo要變換顏色的時候,要使用參數(shù)-e

  格式: echo -e "3[字背景顏色;字體顏色m字符串3[0m"

  例如:

  echo -e "3[41;36m something here 3[0m"

  其中41的位置代表底色, 36的位置是代表字的顏色

  那些ascii code 是對顏色調(diào)用的始末.

  3[ ; m …… 3[0m

  讓字體變?yōu)榧t色并且不停的閃爍

  #echo -e "3[31m [05m 請確認(rèn)是否要停止當(dāng)前的squid進(jìn)程,輸入 [Y/N] 3[0m"

  或者

  #echo -e "3[31m 3[05m 請確認(rèn)是否要停止當(dāng)前的squid進(jìn)程,輸入 [Y/N] 3[0m"

  字背景顏色范圍:40----49

  40:黑

  41:深紅

  42:綠

  43:黃色

  44:藍(lán)色

  45:紫色

  46:深綠

  47:白色

  字顏色:30-----------39

  30:黑

  31:紅

  32:綠

  33:黃

  34:藍(lán)色

  35:紫色

  36:深綠

  37:白色

  ===============================================ANSI控制碼的說明

  [0m 關(guān)閉所有屬性

  [1m 設(shè)置高亮度

  [4m 下劃線

  [5m 閃爍

  [7m 反顯

  [8m 消隱

  [30m -- [37m 設(shè)置前景色

  [40m -- [47m 設(shè)置背景色

  [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)

  Linux的echo命令, 在shell編程中極為常用, 在終端下打印變量value的時候也是常常用到的, 因此有必要了解下echo的用法

  echo命令的功能是在顯示器上顯示一段文字,一般起到一個提示的作用。

  該命令的一般格式為: echo [ -n ] 字符串

  其中選項n表示輸出文字后不換行;字符串能加引號,也能不加引號。

  ECHO命令是大家都熟悉的DOS批處理命令的一條子命令,但它的一些功能和用法也許你并不是全都知道,不信你瞧:

  1. 作為控制批處理命令在執(zhí)行時是否顯示命令行自身的開關(guān) 格式:ECHO [ON|OFF] 如果想關(guān)閉“ECHO OFF”命令行自身的顯示,則需要在該命令行前加上“@”。

  2. 顯示當(dāng)前ECHO設(shè)置狀態(tài) 格式:ECHO

  3. 輸出提示信息格式:ECHO信息內(nèi)容上述是ECHO命令常見的三種用法,也是大家熟悉和會用的,但作為DOS命令淘金者你還應(yīng)該知道下面的技巧:

  4. 關(guān)閉DOS命令提示符 在DOS提示符狀態(tài)下鍵入ECHO OFF,能夠關(guān)閉DOS提示符的顯示使屏幕只留下光標(biāo),直至鍵入ECHO ON,提示符才會重新出現(xiàn)。

  5. 輸出空行,即相當(dāng)于輸入一個回車格式:ECHO.值得注意的是命令行中的“.”要緊跟在ECHO后面中間不能有空格,否則“.”將被當(dāng)作提示信息輸出到屏幕。另外“.”可以用,:;”/[/]+等任一符號替代。在下面的例子中ECHO.輸出的回車,經(jīng)DOS管道轉(zhuǎn)向作為TIME命令的輸入,即相當(dāng)于在TIME命令執(zhí)行后給出一個回車。所以執(zhí)行時系統(tǒng)會在顯示當(dāng)前時間后,自動返回到DOS提示符狀態(tài): C:〉ECHO.|TIME ECHO命令輸出空行的另一個應(yīng)用實例是:將ECHO.加在自動批處理文件中,使原本在屏幕下方顯示的提示畫面,出現(xiàn)在屏幕上方。

  6. 答復(fù)命令中的提問格式:ECHO答復(fù)語|命令文件名上述格式可以用于簡化一些需要人機(jī)對話的命令(如:CHKDSK/F;FORMAT Drive:;del *.*)的操作,它是通過DOS管道命令把ECHO命令輸出的預(yù)置答復(fù)語作為人機(jī)對話命令的輸入。下面的例子就相當(dāng)于在調(diào)用的命令出現(xiàn)人機(jī)對話時輸入“Y”回車: C:〉ECHO Y|CHKDSK/F C:〉ECHO Y|DEL A :*.*

  7. 建立新文件或增加文件內(nèi)容 格式:ECHO 文件內(nèi)容>文件名 ECHO 文件內(nèi)容>>文件名 例如:C:〉ECHO @ECHO OFF〉A(chǔ)UTOEXEC.BAT建立自動批處理文件 C:〉ECHO C:/CPAV/BOOTSAFE〉〉A(chǔ)UTOEXEC.BAT向自動批處理文件中追加內(nèi)容 C:TYPE AUTOEXEC.BAT顯示該自動批處理文件 @ECHO OFF C:/CPAV/BOOTSAFE

  8. 向打印機(jī)輸出打印內(nèi)容或打印控制碼 格式:ECHO 打印機(jī)控制碼>PRN ECHO 打印內(nèi)容>PRN 下面的例子是向M-1724打印機(jī)輸入打印控制碼。156是按住Alt鍵在小鍵盤鍵入156,類似情況依此類推: C:〉ECHO 〈Alt〉+156〈Alt〉+42〈Alt〉+116〉PRN(輸入下劃線命令FS*t) C:〉ECHO 〈Alt〉+155@〉PRN(輸入初始化命令ESC@) C:〉ECHO.〉PRN(換行)

  9. 使喇叭鳴響 C:〉ECHO ^G “^G”是用Ctrl+G或Alt+007輸入,輸入多個^G可以產(chǎn)生多聲鳴響。使用方法是直接將其加入批處理文件中或做成批處理文件調(diào)用。

  10.執(zhí)行ESC控制序列修改屏幕和鍵盤設(shè)置我們知道DOS的設(shè)備驅(qū)動程序ANSI.SYS提供了一套用來修改屏幕和鍵盤設(shè)置的ESC控制序列。如執(zhí)行下述內(nèi)容的批處理程序可以把功能鍵F12定義為DOS命令“DIR/W”,并把屏幕顏色修改為白色字符藍(lán)色背景。 @ECHO”←[0;134;”DIR/W”;13p @ECHO”←[1;37;44m (注:批處理文件中“←”字符的輸入方法是在編輯狀態(tài)下按Alt中小鍵盤上的27)

  -------------------------------------------------------------------------------------------------------------------------------------------

  初識Shell socket

  #include

  #include

  #include

  #include

  #include

  #define ECHO_PORT 8080

  #define MAX_CLIENT_NUM 10

  int main()

  {

  int socketfd;

  socketfd = socket (AF_INET, SOCK_STREAM, 0);

  //aga:create server socket for listening

  if ( socketfd == -1)

  {

  printf("errno=%d",errno);

  exit(1);

  }

  else

  {

  printf("socket create successfully");

  }

  struct sockaddr_in sa;

  bzero(&sa, sizeof(sa));

  sa.sin_family = AF_INET;

  sa.sin_port = htons(ECHO_PORT);

  sa.sin_addr.s_addr = htons(INADDR_ANY);

  //aga: set socket port and address

  bzero(&(sa.sin_zero),8);

  if( bind( socketfd, (struct sockaddr *)&sa, sizeof(sa) )!=0)

  //aga: bind socket with socket address

  {

  printf("bind failed");

  printf("errno=%d",errno);

  }

  else

  {

  printf("bind successfully");

  }

  //aga: after successfully binding, begin to listen!

  if(listen(socketfd,MAX_CLIENT_NUM)!=0)

  {

  printf("listen error");

  exit(1);

  }

  else

  {

  printf("listen successfully");

  }

  int clientfd;

  struct sockaddr_in clientAdd;

  //aga: client socket address

  char buff[101];

  socklen_t len = sizeof(clientAdd);

  int closing=0;

  while( closing == 0 && ( clientfd= accept( socketfd,(struct sockaddr*)&clientAdd,&len))>0)

  //aga: listening socket waits for accepting client connection

  {

  send(clientfd,"connect successfully!",21,0);

  int n;

  while( (n=recv( clientfd,buff,100,0))>0)

  //aga: after connection established, server begins to recvive msg

  {

  printf("number of receive bytes = %d ",n);

  write ( STDOUT_FILENO, buff, n);

  send( clientfd,buff,n,0);

  buff[n]=' ';

  if( strcmp(buff,"quit")==0)

  {

  break;

  }

  else if( strcmp(buff, "close")==0)

  {

  closing =1;

  printf("server is closing ");

  break;

  }

  }

  close(clientfd);

  }

  close(socketfd);

  return 0;

  }

  
看了“linux echo指令學(xué)習(xí)”還想看:

1.必學(xué)100個常用linux命令大全

2.初學(xué)者怎樣學(xué)習(xí)Linux系統(tǒng)命令操作

3.Linux網(wǎng)絡(luò)操作命令學(xué)習(xí)

4.Linux常用指令大全

2918677