cat 命令不仅可以将文件内容从标准输出显示到屏幕,同时还可以将由终端输入的内容,写入到文件中!
然而,我们会发现,有时候使用cat命令写入的内容和我们从终端输入的内容有所出入,比如有些字符串被特殊处理了(像),并没有正确写入文件!这可能将导致我们的后续指令无法正常执行!
cat 命令不处理特殊字符:EOF标志使用单引号引用,
如果字符串中有变量,则不会改变写入文件的内容,如不替换为变量的值或者置空
示例:
cat >> /etc/yum.repos.d/base.repo << 'EOF'
[ali-epel]
name=aliyum epel
baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch
gpgcheck=0
enabled=1
[mariadb]
name=mariadb
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/10.2/centos7-amd64/
gpgcheck=0
enabled=1
cat 命令处理特殊字符:EOF不使用单引号
如果字符串中有变量,则会替换为变量的值或者置空
示例:
cat >> /etc/yum.repos.d/base.repo << EOF
[ali-epel]
name=aliyum epel
baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch
gpgcheck=0
enabled=1
[mariadb]
name=mariadb
baseurl=https://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/10.2/centos7-amd64/
gpgcheck=0
enabled=1
EOF