欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

linux命令:echo使用解讀

 更新時間:2023年04月26日 09:11:40   作者:啊荻~  
這篇文章主要介紹了linux命令之關(guān)于echo的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Shell中的echo命令類似于php中的echo命令,都是用于輸出。Shell中另有一個輸出命令為printf命令,大家可以在Shell printf 命令中查閱學(xué)習(xí)。

本文中的一系列實(shí)例用到的命令我都是在終端直接寫的,輸出也是輸出在終端,這樣方便學(xué)習(xí)和記錄吧!其實(shí)也都可以放到腳本文件中執(zhí)行。

一、語法

echo [-neE]  [arg ...]

(1)含義

  • -n:表示輸出字符串不換行
  • -e:表示對于轉(zhuǎn)義字符按對應(yīng)的方式進(jìn)行處理(若不加-e ,那么在輸出時轉(zhuǎn)義字符會按照普通字符進(jìn)行處理,并不會達(dá)到自己想要達(dá)到的目的。)
  • -E:禁用轉(zhuǎn)義解釋
轉(zhuǎn)義字符含義
\b刪除前一個字符
\n換行
\t水平制表符(tab)
\v垂直制表符(tab)
\c\c后面的字符將不會輸出,輸出完畢后也不會換行
\r光標(biāo)移動到首行,不換行
\f換行,光標(biāo)停在原處
\e刪除后一個字符
\輸出\
\0nnn輸出八進(jìn)制nnn代表的ASCII字符
\xHH輸出十六進(jìn)制數(shù)HH代表的ASCII字符
\a輸出一個警告的聲音

(2)實(shí)例

[root@localhost my_shell]# echo "hello "
hello 
[root@localhost my_shell]# echo -n "hello "
hello [root@localhost my_shell]# echo  "hello \b"
hello \b
[root@localhost my_shell]# echo -e "hello \b"
hello 
[root@localhost my_shell]# echo -en "hello \b"
hello[root@localhost my_shell]# echo -e "hello\tworld"
hello	world
[root@localhost my_shell]# echo -e "hello\nworld"
hello
world
[root@localhost my_shell]# echo -e "hello\vworld"
hello
     world
[root@localhost my_shell]# echo -e "hello\cworld"
hello[root@localhost my_shell]# echo -e "hello\rworld"
world
[root@localhost my_shell]# echo -e "hello\aworld"
helloworld
[root@localhost my_shell]# echo -e "hello\cworld"
hello[root@localhost my_shell]# echo -e "\ehelloworld"
elloworld
[root@localhost my_shell]# echo -e "hello\\world"
hello\world
[root@localhost my_shell]# echo -e "\x31"
1
[root@localhost my_shell]# echo -e "\0123"
S

(3)具體用法

上面介紹的主要是一些輸出字符串相關(guān)的具體用法,下面詳細(xì)例舉一些echo命令的其他用法。

1、顯示普通字符串

[root@localhost ~]# echo "hello world"
hello world
[root@localhost ~]# echo hello world
hello world

#雙引號可以省略,效果一致。(字符串的輸出都是如此,下面一些實(shí)例也是可以省略雙引號也能達(dá)到相同效果)

2、顯示變量

這里用到read命令(從標(biāo)準(zhǔn)輸入中讀取一行,并把輸入行的每個字段的值指定給 shell 變量)。

[root@localhost ~]# read name
Michael Zhang
[root@localhost ~]# echo "My name is $name"
My name is Michael Zhang

3、顯示換行

[root@localhost ~]# echo -e "hello \nworld"
hello 
world

4、顯示不換行

#!/bin/sh
echo -e "OK! \c" # -e 開啟轉(zhuǎn)義 \c 不換行
echo "hello world"
#結(jié)果如下
OK! hello world

5、顯示轉(zhuǎn)義字符

[root@localhost ~]# echo "\"hello world\""
"hello world"

6、重定向

結(jié)果輸出到文件

echo "hello world" > my_file
#將hello world輸出到my_file文件

7、原樣輸出

用單引號可原樣輸出。

[root@localhost ~]# echo '$name\"'
$name\"
[root@localhost ~]# echo '$name'
$name

8、顯示命令執(zhí)行結(jié)果

#顯示當(dāng)前日期
[root@localhost ~]# echo `date`
Sat Jan 2 23:12:39 CST 2021

這里使用的是反引號`, 而不是單引號’。

實(shí)際上輸出一些執(zhí)行命令的結(jié)果就是這樣用反引號。

二、echo的重定向

重定向是Shell中的一個重要內(nèi)容,可以查看我的文章Linux中的重定向。

echo命令的重定向功能經(jīng)常被用于清空文件內(nèi)容(刪除文件)時使用,具體在我的另一篇文章中介紹:Linux中清空文件的方式

(1)echo "content" > filename

將content覆蓋到filename文件當(dāng)中去,filename文件當(dāng)中之前的內(nèi)容不復(fù)存在了,實(shí)際上是修改了原文件的內(nèi)容。

(2)echo "content" >> filename

將content追加到filename文件后,對filename文件之前的內(nèi)容不修改,只進(jìn)行增添,也叫追加重定向。

(3)實(shí)例

[root@localhost my_shell]# touch test
[root@localhost my_shell]# cat test 
[root@localhost my_shell]# ll
total 4
-rw-r--r-- 1 root root 175 Nov  6 17:46 del.sh
-rw-r--r-- 1 root root   0 Nov  7 23:33 test
[root@localhost my_shell]# echo "123456" > test
[root@localhost my_shell]# cat test
123456
[root@localhost my_shell]# echo "111111" > test
[root@localhost my_shell]# cat test
111111
[root@localhost my_shell]# echo "123456" >> test
[root@localhost my_shell]# cat test
111111
123456
[root@localhost my_shell]# 

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Linux下用dnsmasq做dns cache server的配置方法

    Linux下用dnsmasq做dns cache server的配置方法

    最近國外的服務(wù)器本地DNS總是出故障,閃斷一會兒都會影響業(yè)務(wù)。于是在機(jī)房里找了兩臺Server,安裝上keepalived和dnsmasq實(shí)際本地的DNS緩存
    2014-08-08
  • centos8 安裝 nginx的詳細(xì)教程(圖文)

    centos8 安裝 nginx的詳細(xì)教程(圖文)

    Nginx是一個web服務(wù)器也可以用來做負(fù)載均衡及反向代理使用,目前使用最多的就是負(fù)載均衡,這篇文章主要介紹了centos8 安裝 nginx ,需要的朋友可以參考下
    2019-11-11
  • Linux中服務(wù)器軟件為什么需要編譯安裝

    Linux中服務(wù)器軟件為什么需要編譯安裝

    這篇文章主要介紹了Linux中服務(wù)器軟件為什么需要編譯安裝,在什么情況下需要編譯安裝,需要的朋友可以參考下
    2014-02-02
  • inotify+rsync實(shí)現(xiàn)實(shí)時同步的方法

    inotify+rsync實(shí)現(xiàn)實(shí)時同步的方法

    下面小編就為大家分享一篇inotify+rsync實(shí)現(xiàn)實(shí)時同步的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Linux實(shí)現(xiàn)自動掛載autofs的方法詳解

    Linux實(shí)現(xiàn)自動掛載autofs的方法詳解

    這篇文章主要介紹了Linux實(shí)現(xiàn)自動掛載autofs的相關(guān)資料。autofs 服務(wù)將實(shí)現(xiàn)自動掛載外圍設(shè)備,NFS共享目錄等,并在空閑5分鐘后后自動卸載,需要的可以參考一下
    2022-10-10
  • linux如何將環(huán)境文件或者文件夾打包

    linux如何將環(huán)境文件或者文件夾打包

    這篇文章主要介紹了linux如何將環(huán)境文件或者文件夾打包問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 詳細(xì)講解西軟FOXHIS增量備份與恢復(fù)方法

    詳細(xì)講解西軟FOXHIS增量備份與恢復(fù)方法

    西軟在實(shí)施階段時,會設(shè)置好幾個Linux shell的自動任務(wù),把數(shù)據(jù)每天全庫備份兩次,并且并把數(shù)據(jù)通過ftp拷至備份庫,其實(shí)這樣做存在非常大的安全隱患,數(shù)據(jù)庫服務(wù)器如果給KO了,您酒店只有當(dāng)天的兩次備份,數(shù)據(jù)損失將是12個小時來計算,對酒店經(jīng)營非常不利
    2017-01-01
  • linux crm部署代碼詳解

    linux crm部署代碼詳解

    在本篇文章里小編給大家分享了關(guān)于linux crm部署流程代碼,需要的朋友們可以學(xué)習(xí)下。
    2020-01-01
  • 阿里云ECS實(shí)例設(shè)置用戶root密碼和遠(yuǎn)程連接的方法

    阿里云ECS實(shí)例設(shè)置用戶root密碼和遠(yuǎn)程連接的方法

    這篇文章主要介紹了阿里云ECS實(shí)例設(shè)置用戶root密碼和遠(yuǎn)程連接的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 關(guān)于bash函數(shù)你可能不知道的一些事情(譯)

    關(guān)于bash函數(shù)你可能不知道的一些事情(譯)

    這篇文章主要給大家介紹了關(guān)于bash函數(shù)你可能不知道的一些事情,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07

最新評論