修复WordPress权限的Bash脚本报错求助:find命令参数异常
WordPress权限修复脚本执行报错的解决办法
你的脚本执行报错是因为find命令的参数格式错误——-和type之间多了空格,导致shell把-、type、f/d识别成了独立的文件名参数,所以才会出现找不到文件的提示。
直接在终端运行时你应该是写对了参数格式(没有多余空格),所以能正常工作。
修正后的脚本代码如下:
echo -n "Enter username: " read USER echo "username is $USER" # reset to safe defaults echo "resetting to safe defaults" # sets default perms on all files and folders find /home/$USER/public_html/ -type f -exec chmod 644 {} + find /home/$USER/public_html/ -type d -exec chmod 755 {} + chmod 660 /home/$USER/public_html/wp-config.php echo "done"
另外补充两个小细节:
- 原脚本里用了
read -a USER,这个选项是用来读取数组的,对于单个用户名输入来说,用read USER更合适(虽然单个输入时$USER也能拿到值,但语义更准确)。 - 执行脚本时确保
/home/$USER/public_html/路径存在,避免出现路径不存在的额外错误。
内容的提问来源于stack exchange,提问作者robert powell
相关产品推荐
相关产品推荐

