首页 > 解决方案 > 在 Windows 上通过 Git bash 移动包含运行脚本的文件夹会引发“权限被拒绝”

问题描述

我正在尝试重命名从中运行脚本的父文件夹。

我有以下(简单)树: C:/workspace/FOO/Script.sh

我在 C:/workspace 现在运行./FOO/Script.sh

这个脚本只是:

mv FOO BAR

我得到:

mv: cannot move 'FOO' to 'BAR': Permission denied

如何在 BAR 中重命名 FOO?

注意: 使用 Windows GUI(又名资源管理器)重命名文件夹没有问题

注意: 我正在寻找可以嵌入脚本本身的技巧,这样用户就不会知道其中的区别

标签: windowsbashshellgit-bash

解决方案


要从脚本本身运行它,请将 Script.sh 更改为:

mkdir -p BAR
cp ./FOO/* ./BAR/
cp ./FOO/. ./BAR/ #to copy .git
rm -rf FOO/

推荐阅读