码迷,mamicode.com
首页 > 系统相关 > 详细

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

时间:2020-03-25 21:48:51      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:ati   dump   关键字   问题   shel   shell   执行   结果   dev   

举例:

执行如下脚本,运行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关键字

标签:ati   dump   关键字   问题   shel   shell   执行   结果   dev   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!