当前位置: 首页 > ai >正文

shell基础之EOF的用法

一、EOF的用法

EOF是(END Of File)的缩写,表示自定义终止符。既然自定义,那么EOF就不是固定的,可以随意设置别名,在linux按ctrl-d 就代表EOF。
EOF一般会配合cat能够多行文本输出。
其用法如下:
<<EOF        #开始
....                  #输入内容
EOF            #结束
还可以自定义,比如自定义:
<<ABC        #开始
....
ABC              #结束
通过cat配合重定向能够生成文件并追加操作,在它之前先熟悉几个特殊符号
<:输入重定向
>:输出重定向
>>:输出重定向,进行追加,不会覆盖之前内容
<<:标准输入来自命令行的一对分隔号的中间内容
例子1:
[root@ren5 ~]# cat <<EOF
> hello
> EOF
hello
我们知道cat的操作对象是文件,但是例1中cat的操作对象不是文件,而是用户输入;那么我们可以这样理解例1:先在文件file中输入“Hello”,再用cat file输出其中的内容。
也就是说我们可以用一个文件来替代"<< EOF EOF"。
反过来说,如果操作命令中的文件是输入对象,也可以用"<< EOF EOF"来替代的。
例子2:
[root@ren5 ~]# cat 1.txt
abc
[root@ren5 ~]# cat <<EOF > 1.txt             #向文件1.txt输入覆盖内容(也可以:cat > 1.txt <<EOF)
> 123
> 456
> 678
> LOL
> EOF
[root@ren5 ~]# cat 1.txt
123
456
678
LOL
“<< EOF EOF”的作用是在命令执行过程中用户自定义输入,它类似于起到一个临时文件的作用,只是比使用文件更方便灵活。
# 添加 k8s 安装源
cat <<EOF > kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1    //(enabled=0)禁用状态 改为(enabled=1)启用状态
gpgcheck=0  //gpgcheck=0 表示对从这个源下载的rpm包不进行校验
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
mv kubernetes.repo /etc/yum.repos.d/
http://www.xdnf.cn/news/17136.html

相关文章:

  • React:受控组件和非受控组件
  • 2025年测绘程序设计模拟赛一--地形图图幅编号及图廓点经纬度计算
  • 202506 电子学会青少年等级考试机器人六级实际操作真题
  • 简单介绍cgroups以及在K8s中的应用
  • copy_file_range系统调用及示例
  • CubeFS存储(一)
  • HTML应用指南:利用GET请求获取全国OPPO官方授权体验店门店位置信息
  • css优化、提升性能方法都有哪些?
  • LINUX-磁盘管理
  • 基于2025年《Science》期刊论文的科研图表Python绘制分析
  • 二、Envoy静态配置
  • Linux环境下部署SSM聚合项目
  • 阿里云polardb-x 2.0迁移至华为云taurusdb
  • 安卓雷电模拟器安装frida调试
  • BottomSheetDialogFragment 设置背景为透明无效果(解决方法)
  • antd组件select下拉数据分页加载
  • vcpkg: 一款免费开源的C++包管理器
  • 计算机网络:如何判断B或者C类IP地址是否划分了子网
  • 基于Hadoop的木鸟民宿数据分析与可视化、民宿价格预测模型系统的设计与实现
  • CAN通信
  • 解决Node.js v12在Apple Silicon(M1/M2)上的安装问题
  • 使用R将nc文件转换为asc文件或者tif文件
  • 下载Android studio
  • try catch throw的本质
  • Linux《进程间通信(上)》
  • WARN:get Topic [TBW102] RouteInfoFromNameServer is not exist value
  • 使用MatterJs物理2D引擎实现重力和鼠标交互等功能,有点击事件(盒子堆叠效果)
  • [Oracle] NVL()函数
  • 测试单节点elasticsearch配置存储压缩后的比率
  • 河南萌新联赛2025第(四)场【补题】