加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – cp:找不到命令

发布时间:2020-12-13 19:22:48 所属栏目:Linux 来源:网络整理
导读:我试图将一个文件复制到其他目录,并在调用中断时收到错误消息. 剧本 : #!/bin/bashPATH=~/MkFile/exitfn () { trap SIGINT # Resore signal handling for SIGINT echo ; echo 'Called ctrl + c ' # Growl at user,cp ./BKP/temp.txt $PATH/backup.txt exit

我试图将一个文件复制到其他目录,并在调用中断时收到错误消息.

剧本 :

#!/bin/bash


PATH=~/MkFile/

exitfn () {
    trap SIGINT              # Resore signal handling for SIGINT
        echo ; echo 'Called ctrl + c '    # Growl at user,cp ./BKP/temp.txt $PATH/backup.txt
            exit                     #   then exit script.
}

trap "exitfn" INT            # Set up SIGINT trap to call function.ii



    read -p "What? "

    echo "You said: $REPLY"
# reset all traps## 


    trap - 0 SIGINT

输出:

./signal.sh
What? ^C
Called ctrl + c
./signal.sh: line 9: cp: command not found

你知道这个剧本有什么问题吗?

最佳答案
您修改了PATH变量,这就是原因.也许您只想添加另一条路径:

PATH=$PATH:~/MkFile/

或者如果在Bash中,只需使用append运算符:

PATH+=:~/MkFile/

想想看,我认为你其实并不想使用PATH变量.只需使用其他参数名称:

DIR=~/MkFile/

有些人会建议只使用小写字母以避免与内置shell变量发生冲突:

path=~/MkFile/

从手册:

06004

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读