首页 > 系统服务 > 详细

shell-函数名不能为linux关键字

时间:2020-03-25 22:43:00      阅读:59      评论:0      收藏:0      [点我收藏+]

举例:

执行如下脚本,运行ok:

#!/bin/bash

source ./env.sh
scp -i ${KEY} -r ${BASE_PATH} ${SLAVE_IP}:/usr/local > /dev/null 2>&1

 

执行如下脚本,运行fail,报错:Segmentation fault (core dumped)

#!/bin/bash

source ./env.sh
function scp()
{
    scp -i ${KEY} -r ${BASE_PATH} ${SLAVE_IP}:/usr/local > /dev/null 2>&1
}
scp

 

问题: 为什么同样的命令,放在function里面执行会报错

 

scp是一个关键词,换成其他字符试试呢,scp改成cp_dir

#!/bin/bash

source ./env.sh
function cp_dir()
{
    scp -i ${KEY} -r ${BASE_PATH} ${SLAVE_IP}:/usr/local > /dev/null 2>&1
}
cp_dir

 

结果运行ok,说明函数名不能为shell的关键词

 

shell-函数名不能为linux关键字

原文:https://www.cnblogs.com/liurong07/p/12569369.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!