Linux下cat eof替換多行echo

2021-12-29 23:49:46 字數 1047 閱讀 3675

linux下cat<<eof替換多行echo

今天在寫oracle安裝前的環境配置指令碼的時候,要在/etc/sysctl.conf檔案上新增多行,之前是用的echo,覺得有點麻煩,發現可以通過cat << eof替換。

www.2cto.com  

cat << eof >> /etc/sysctl.conf

###install oracle by liups echo begin

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default = 262144

net.core.rmem_max = 262144

net.core.wmem_default = 262144

net.core.wmem_max = 262144

###install oracle by liups echo end

eof 

這樣就可以輕鬆搞定了,不需要每次都得修改echo裡面的值了。, 

發現在cat <<eof中如果帶有 $變數的時候會將$和變數名變成空格,想到到轉義字元新增之後可以搞定。同樣cat <<eof中含有`的時候會將``內的命令轉換成結果,同樣也需要新增轉義字元比如  www.2cto.com  

cat << eof >/home/oracle/.bash_profile

path=$path:$home/bin

export oracle_base=/u01/app/oracle

export oracle_home=$oracle_base/10.2.0/db_1

export oracle_sid=yqpt

export path=$path:$oracle_home/bin

export nls_lang="american_america.al32utf8"

eof

Linux下vi的替換

s substitute 命令用來查詢和替換字串。語法如下 s 例如 s foo bar g會在全域性範圍 查詢foo並替換為bar,所有出現都會被替換 g 作用範圍分為當前行 全文 選區等等。當前行 s foo bar g全文 s foo bar g選區,在visual模式下選擇區域後輸入 vim...

Linux下配置多網絡卡多閘道器

比較典型的一種場景 一台 linux 伺服器上有三個網口並接入三個不同運營商的網路,以實現不同運營商使用者訪問其對應的網路線路,來減少網路延時。伺服器及對應網路資訊如下 一台 ubuntu 16.04 server,這裡一共使用三塊網絡卡。假定網路資訊如下 這裡 ip 只是為了區分各運營商線路做的示...

Linux下替換字元命令

注意,其中 s 為表示替換動作,表示所有行,g 表示全行 如果不指定g只會替換每行第乙個匹配的 表示行首,表示行尾。在檔案的第一行或其5行至最後一行的行首插入內容 5,s 要加的內容 在檔案的每一行的行尾新增內容 s 要加的內容 g 在整個檔案中替換string成string1 s string s...