对不起,在论坛上我发现了如何在橙色pi pc中禁用owerclocking的修复方法。
#!/bin/bash
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
if [ "$(id -u)" != «0» ]; then
echo «This script must be executed as root. Exiting» >&2
exit 1
fi
Fex2Bin="$(which fex2bin)"
if [ «X${Fex2Bin}» = «X» ]; then
apt-get -f -q -y install sunxi-tools
fi
Path2ScriptBin="$(df | awk -F" " '/^\/dev\/mmcblk0p1/ {print $6}')"
if [ ! -f "${Path2ScriptBin}/script.bin" ]; then
echo «Can not find script.bin. Ensure boot partition is mounted» >&2
exit 1
fi
MyTmpFile="$(mktemp /tmp/${0##*/}.XXXXXX)"
trap «rm \»${MyTmpFile}\"; exit 0" 0 1 2 3 15
bin2fex <"${Path2ScriptBin}/script.bin" | grep -v "^LV" | grep -v "^max_freq" | grep -v "^min_freq" | grep -v "^extremity_freq" >"${MyTmpFile}"
if [ $? -ne 0 ]; then
echo «Could not convert script.bin to fex. Exiting» >&2
exit 1
fi
cp -p "${Path2ScriptBin}/script.bin" "${Path2ScriptBin}/script.bin.bak"
sed -i '/\[dvfs_table\]/a \
extremity_freq = 1296000000\
max_freq = 1200000000\
min_freq = 480000000\
LV_count = 7\
LV1_freq = 1296000000\
LV1_volt = 1320\
LV2_freq = 1200000000\
LV2_volt = 1240\
LV3_freq = 1104000000\
LV3_volt = 1180\
LV4_freq = 1008000000\
LV4_volt = 1140\
LV5_freq = 960000000\
LV5_volt = 1080\
LV6_freq = 816000000\
LV6_volt = 1020\
LV7_freq = 480000000\
LV7_volt = 980' "${MyTmpFile}"
fex2bin "${MyTmpFile}" "${Path2ScriptBin}/script.bin" >/dev/null
if [ $? -ne 0 ]; then
mv "${Path2ScriptBin}/script.bin.bak" "${Path2ScriptBin}/script.bin"
echo «Writing script.bin went wrong. Nothing changed» >&2
exit 1
fi
echo «Successfully repaired broken overvolting/overclocking settings. Reboot necessary for changes to take effect»我犯了这个错误
./fix.sh: line 53: unexpected EOF while looking for matching `"'
./fix.sh: line 59: syntax error: unexpected end of file你能帮我解决这个问题吗?这不是我的剧本
发布于 2020-04-22 05:50:09
欢迎来到Unix & Linux StackExchange!
./fix.sh: line 53: unexpected EOF while looking for matching `"'这个错误消息可能很棘手,因为它指示脚本的第53行,这是shell注意到双引号出现问题的地方。通常,实际错误是在此之前某个地方缺少双引号。
文章中的代码格式已经在试图帮助您。注意,在您发布的代码中,最初只以红色显示双引号(")中的内容。但是在这一行之后,其他的东西都变红了,双引号中的东西都是黑色或蓝色的:
trap «rm \»${MyTmpFile}\"; exit 0" 0 1 2 3 15配色方案的改变意味着这一行有一个未配对的双引号(不是用反斜杠转义)。它看起来像是从«.»-style引号到标准双引号的不完全转换。
这一行可能应该是:
trap "rm \"${MyTmpFile}\"; exit 0" 0 1 2 3 15脚本中的所有«.»-style引号可能也应该转换为常规双引号。
在编写脚本时,永远不要使用编辑器将常规单引号或双引号替换为任何类型的“智能引号”。这样的替换常常会破坏脚本。如果您的编辑器这样做,了解如何关闭“智能引号”功能。
./fix.sh: line 59: syntax error: unexpected end of file这条消息告诉您第59行的一个问题,但是脚本只有58行。所以问题就在脚本的末尾。脚本的最后一行有一个未配对的引号,应该是固定的。
https://unix.stackexchange.com/questions/581686
复制相似问题