sed: 无法读取 ../../build.gradle: 没有那个文件或目录
sed: can't read ../../build.gradle: No such file or directory
我是 git 和 github 的新手。我正在做一个项目,我需要将我的更改提交到特定分支中的 github 存储库。
但是我得到了错误
$ git commit
3.5.0.1
s/3.5.0.1/3.5.1.1/g
sed: can't read ../../build.gradle: No such file or directory
我在这里也附上了预提交文件代码。
#!/bin/sh
## finding the exact line in the gradle file
#ORIGINAL_STRING=$(cat ../../build.gradle | grep -E '\d\.\d\.\d\.\d')
## extracting the exact parts but with " around
#TEMP_STRING=$(echo $ORIGINAL_STRING | grep -Eo '"(.*)"')
## the exact numbering scheme
#FINAL_VERSION=$(echo $TEMP_STRING | sed 's/"//g') # 3.5.0.1
#Extract APK version
v=$(cat build.gradle | grep rtVersionName | awk '{print }')
FINAL_VERSION=$(echo ${v} | cut -d"\"" -f2)
echo ${FINAL_VERSION}
major=0
minor=0
build=0
assets=0
regex="([0-9]+).([0-9]+).([0-9]+).([0-9]+)"
if [[ $FINAL_VERSION =~ $regex ]]; then
major="${BASH_REMATCH[1]}"
minor="${BASH_REMATCH[2]}"
build="${BASH_REMATCH[3]}"
assets="${BASH_REMATCH[4]}"
fi
# increment the build number
build=$(echo $build + 1 | bc)
NEW_VERSION="${major}.${minor}.${build}.${assets}"
SED_ARGUMENT=$(echo "s/${FINAL_VERSION}/${NEW_VERSION}/g")
echo $SED_ARGUMENT
sed -i -e `printf $SED_ARGUMENT` ../../build.gradle
错误基本上出现在这个文件的最后一行。我正在使用 windows。
我尝试过的事情:
sed -i -e `printf $SED_ARGUMENT` ../../build.gradle
sed -i ' ' -e `printf $SED_ARGUMENT` ../../build.gradle
我无法理解我到底哪里做错了。请帮助我。
sed: can't read ../../build.gradle: No such file or directory
这个比较简单。您的 build.gradle
文件不在 ../../build.gradle
.
解决方案是确定 build.gradle
文件相对于脚本的实际路径,并更改脚本中的路径。
要调试它,请在脚本中执行 echo Current Directory: $PWD
以查看实际工作目录是什么,然后您应该能够确定要使用的正确路径。
我是 git 和 github 的新手。我正在做一个项目,我需要将我的更改提交到特定分支中的 github 存储库。 但是我得到了错误
$ git commit
3.5.0.1
s/3.5.0.1/3.5.1.1/g
sed: can't read ../../build.gradle: No such file or directory
我在这里也附上了预提交文件代码。
#!/bin/sh
## finding the exact line in the gradle file
#ORIGINAL_STRING=$(cat ../../build.gradle | grep -E '\d\.\d\.\d\.\d')
## extracting the exact parts but with " around
#TEMP_STRING=$(echo $ORIGINAL_STRING | grep -Eo '"(.*)"')
## the exact numbering scheme
#FINAL_VERSION=$(echo $TEMP_STRING | sed 's/"//g') # 3.5.0.1
#Extract APK version
v=$(cat build.gradle | grep rtVersionName | awk '{print }')
FINAL_VERSION=$(echo ${v} | cut -d"\"" -f2)
echo ${FINAL_VERSION}
major=0
minor=0
build=0
assets=0
regex="([0-9]+).([0-9]+).([0-9]+).([0-9]+)"
if [[ $FINAL_VERSION =~ $regex ]]; then
major="${BASH_REMATCH[1]}"
minor="${BASH_REMATCH[2]}"
build="${BASH_REMATCH[3]}"
assets="${BASH_REMATCH[4]}"
fi
# increment the build number
build=$(echo $build + 1 | bc)
NEW_VERSION="${major}.${minor}.${build}.${assets}"
SED_ARGUMENT=$(echo "s/${FINAL_VERSION}/${NEW_VERSION}/g")
echo $SED_ARGUMENT
sed -i -e `printf $SED_ARGUMENT` ../../build.gradle
错误基本上出现在这个文件的最后一行。我正在使用 windows。 我尝试过的事情:
sed -i -e `printf $SED_ARGUMENT` ../../build.gradle
sed -i ' ' -e `printf $SED_ARGUMENT` ../../build.gradle
我无法理解我到底哪里做错了。请帮助我。
sed: can't read ../../build.gradle: No such file or directory
这个比较简单。您的 build.gradle
文件不在 ../../build.gradle
.
解决方案是确定 build.gradle
文件相对于脚本的实际路径,并更改脚本中的路径。
要调试它,请在脚本中执行 echo Current Directory: $PWD
以查看实际工作目录是什么,然后您应该能够确定要使用的正确路径。