重定向写入文件

avatar 2021年5月6日18:11:57 评论 702 次浏览

今天在做jenkins自动发布的时候,在jenkins里配置启动脚本,写了一些启动命令,不过在使用的时候总是达不到自己意向的结果,不断的尝试了一下,不管是使用echo还是cat命令,刚开始一直想使用echo命令来着,因为我已经用了cat写了,所以想让两个进行区分方便以后做批量修改。所有的错误就不在这里叙述了,直接上结果。

[root@wulaoer.org ~]# java_star="java -jar daemon.jar"
[root@wulaoer.org ~]# echo "
> #!/bin/bash
> ${java_star}
> " > enpoint.sh
[root@wulaoer.org ~]# cat enpoint.sh

#!/bin/bash
java -jar daemon.jar

如果是追加,就把">"替换成">>"即可。下面看一下使用cat命令

[root@wulaoer.org ~]# java_star="java -jar daemon.jar"
[root@wulaoer.org ~]# cat  >  test.sh  <<hh
> #!/bin/bash
> ${java_star}
> hh
[root@wulaoer.org ~]# cat test.sh
#!/bin/bash
java -jar daemon.jar

也可以使用cat做重定向写入文件。

[root@wulaoer.org ~]# cat > wulaoer.sh << EOF
> #!/bin/bash
> ${java_star}
> EOF
[root@wulaoer.org ~]# cat wulaoer.sh
#!/bin/bash
java -jar daemon.jar

注意,如果往文件中做追加,就和上面一样。

[root@wulaoer.org ~]# cat >> wulaoer.sh << EOF
> hello word
> EOF
[root@wulaoer.org ~]# cat wulaoer.sh
#!/bin/bash
java -jar daemon.jar
hello word

注意,上面echo的时候写入的文件是从第二行开始写入,那是因为"后面回车就代表了一行,如果直接跟字符串就不会从第二行开始了,记住前面不能有空格,如果有空格,文件前面也会有的。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: