use*_*362 5 unix macos bash shell terminal
我正在使用hdiutil来安装sparseimage文件,当我在终端输入命令时它工作正常,但是当我尝试将它作为shell脚本运行时,它会出错.
这是代码:
echo -n 'password' | hdiutil attach -stdinpass file.sparseimage
Run Code Online (Sandbox Code Playgroud)
这是错误:
hdiutil: attach failed - Authentication error
Run Code Online (Sandbox Code Playgroud)
我确信密码是正确的.谁能告诉我有什么问题?
hdiutil文档的示例部分建议使用printf此而不是echo -n.
Creating an encrypted single-partition image without user interaction:
printf pp|hdiutil create -encryption -stdinpass -size 9m sp.dmg
Run Code Online (Sandbox Code Playgroud)
如果您正在测试10.9测试版,请确保使用最新版本和10.8进行测试.我只提出这个问题,因为我在早期版本10.9中遇到了一些与STDIN相关的错误.