亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Bash?EOF的使用小結(jié)

 更新時間:2023年01月12日 10:40:31   作者:ghostwritten  
本文主要介紹了Bash?EOF的使用小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

EOF適用場景:

  • 命令行多行輸出
  • 腳本包裝
  • 類型配置文件

1. 命令行輸出

$ cat << EOF
> Hello
> EOF
Hello

2. 寫入文本

cat << EOF >1.txt
111
222
333
EOF

復(fù)制終端是這樣的。

cat << EOF >1.txt
> 111
> 222
> 333
> EOF

回車后

$ cat 1.txt
111
222
333

3. 追加文本

cat << EOF >> 1.txt
444
555
666
EOF

查看1.txt內(nèi)容

$ cat 1.txt
111
222
333
444
555
666

4. 覆蓋文本

cat << EOF >1.txt
aaa
bbb
ccc
EOF

查看

$ cat 1.txt
aaa
bbb
ccc

5. 自定義 EOF

cat << a > 1.txt
111
222
333
a

輸出:

$ cat 1.txt
111
222
333

6. 另一種格式

  • cat > filename <<EOF
  • cat << EOF > filename
cat > 1.txt <<EOF
123
456
789
EOF

查看

$ cat 1.txt
123
456
789

追加內(nèi)容

cat >> 1.txt <<EOF
abc
def
ghi
EOF

查看內(nèi)容

$ cat 1.txt
123
456
789
abc
def
ghi

7. 示例

7.1 配置文件

或者cat << EOF > /usr/local/mysql/my.cnf

cat > /usr/local/mysql/my.cnf << EOF ? ? ? ??
[client]
port = 3306
socket = /usr/local/mysql/var/mysql.sock

[mysqld]
port = 3306
socket = /usr/local/mysql/var/mysql.sock

basedir = /usr/local/mysql/
datadir = /data/mysql/data
pid-file = /data/mysql/data/mysql.pid
user = mysql
bind-address = 0.0.0.0
server-id = 1
sync_binlog=1
log_bin = mysql-bin

[myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES?
port = 3306
EOF

7.2 新建分區(qū)并掛載

$ cat auto_add_disk.sh ? ? ? ??
#!/bin/bash
fdisk ?/dev/sdb ?<<EOF
n
p
1
?
?
wq
EOF
?
/sbin/mkfs .ext4 ?/dev/sdb1 ?&& ? /bin/mkdir ?-p ?/data ?&& ?/bin/mount ?/dev/sdb1 ?/data
echo ?'LABEL=data_disk /data ext4 defaults 0 2' ?>> ?/etc/fstab

7.3 設(shè)置變量

$ sql=$(cat <<EOF
SELECT foo, bar FROM db
WHERE foo='baz'
EOF
)

$ echo -e "$sql"

7.4 輸出腳本

cat <<EOF > print.sh
#!/bin/bash
echo \$PWD
echo $PWD
EOF

查看內(nèi)容

$ cat print.sh
#!/bin/bash
echo $PWD
echo /home/user

7.5 匹配輸出

$ cat <<EOF | grep 'b' | tee b.txt
> foo
> bar
> baz
> EOF
bar
baz

$ cat b.txt
bar
baz

7.6 json 文本

cat >> /etc/docker/daemon.json < EOF
{
? ?"exec-opts": ["native.cgroupdriver=systemd"],
? ?"log-driver": "json-file",
? ?"log-opts": {
? ?"max-size": ?"100m"
? ? },
? ?"registry-mirrors": [
? ? "https://hub-mirror.c.163.com",
? ? "https://mirror.baidubce.com"
? ]
?}
?EOF

查看

$ cat /etc/docker/daemon.json
{
   "exec-opts": ["native.cgroupdriver=systemd"],
   "log-driver": "json-file",
   "log-opts": {
   "max-size":  "100m"
    },
   "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
 }

參考:

How does “cat << EOF” work in bash?

What is Cat EOF in Bash Script?

到此這篇關(guān)于Bash EOF的使用小結(jié)的文章就介紹到這了,更多相關(guān)Bash EOF內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • bash判斷文件或文件夾是否存在的shell代碼

    bash判斷文件或文件夾是否存在的shell代碼

    這篇文章主要介紹了bash判斷文件或文件夾是否存在的shell代碼,需要的朋友可以參考下
    2017-05-05
  • 自動重啟服務(wù)的shell腳本代碼

    自動重啟服務(wù)的shell腳本代碼

    公司tomcat服務(wù)器有個過一段時間自動會掛的bug一直沒能解決,掛的時候還要手動重啟tomcat,于是決定寫個腳本讓它定時檢測故障自動重啟吧
    2013-06-06
  • shell腳本多實例部署nginx的詳細教程

    shell腳本多實例部署nginx的詳細教程

    周一今天給大家分享shell腳本多實例部署nginx的詳細教程,文章通過實例代碼腳本給大家詳細介紹,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-10-10
  • shell腳本實現(xiàn)隨機生成10個8位密碼

    shell腳本實現(xiàn)隨機生成10個8位密碼

    這篇文章主要介紹了shell腳本實現(xiàn)隨機生成10個8位密碼的方法,這里推薦給大家,有需要的小伙伴的可以參考下。
    2015-03-03
  • Shell 編程:Bash空格的那點事

    Shell 編程:Bash空格的那點事

    空格,一個看不見的字符,很不起眼,也正由于不起眼,很多人經(jīng)常忽略它,導(dǎo)致代碼出錯,卻還找不著北。這里,我們來聊聊bash中空格的那點事
    2015-01-01
  • linux命令查看磁盤空間的方法

    linux命令查看磁盤空間的方法

    這篇文章主要介紹了linux命令查看磁盤空間的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • 在 Shell 提示符中顯示 Git 分支名稱的方法

    在 Shell 提示符中顯示 Git 分支名稱的方法

    這篇文章主要介紹了在 Shell 提示符中顯示 Git 分支名稱的方法,本文詳細的講解了解決這個需求的過程,需要的朋友可以參考下
    2015-04-04
  • getopts解析shell腳本命令行參數(shù)的方法

    getopts解析shell腳本命令行參數(shù)的方法

    getpots是Shell命令行參數(shù)解析工具,旨在從Shell Script的命令行當(dāng)中解析參數(shù),這篇文章主要介紹了getopts解析shell腳本命令行參數(shù),需要的朋友可以參考下
    2023-01-01
  • Shell腳本傳遞參數(shù)的3種方法比較

    Shell腳本傳遞參數(shù)的3種方法比較

    這篇文章主要介紹了Shell腳本傳遞參數(shù)的3種方法比較,本文直接給出代碼示例,在代碼中包含詳細注解,需要的朋友可以參考下
    2015-05-05
  • ubuntu編譯pyav報錯libx264?not?found解決示例

    ubuntu編譯pyav報錯libx264?not?found解決示例

    這篇文章主要為大家介紹了ubuntu編譯pyav報錯libx264?not?found解決示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09

最新評論