繁体   English   中英

苹果脚本错误

[英]Error in apple script

我只是在玩弄苹果脚本,跟我的朋友开玩笑。 我做了一个简单的终端命令,以使其计算机被黑客入侵(它们很容易吓到)。 我打算将其编译为Apple脚本中的应用程序,但是当我对其进行编译时,始终收到语法错误。 我曾尝试修复它,但无济于事。 我只是在学习苹果脚本,所以这可能是一个愚蠢的菜鸟问题。 谢谢! 〜科尔

这是脚本:

tell application "Terminal"
do script "while (true) do echo -n "Error: System Breach Detected    190721064281 killing proccesses. 12060219682197312-90785236412412001-612073412-712481243261=1123-0914712-1209412107381\][12389138719  End."; done"
activate
end tell

您试图将双引号字符串( "Error: System Breach... )嵌套在另一个双引号字符串( "while (true) do... )中,但引号不会嵌套。 当AppleScript看到"while (true) do echo -n "Error ,它认为它看到的是双引号字符串,后跟单词Error ,这没有任何意义。

要解决此问题,您可以使用反斜杠( \\ )对内部的双引号进行转义-AppleScript将在解析字符串时删除转义符,因此它们不会传递给外壳并将其混淆。 但是还有另一个问题:字符串的中间也有一个逃逸符(反斜杠),这也会使AppleScript感到困惑。 为了使该工作有效,您实际上需要对转义符( \\\\ )进行转义。 这是添加必要的转义符的结果:

tell application "Terminal"
    do script "while (true) do echo -n \"Error: System Breach Detected    190721064281 killing proccesses. 12060219682197312-90785236412412001-612073412-712481243261=1123-0914712-1209412107381\\][12389138719  End.\"; done"
    activate
end tell

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM