Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Text 尝试在telnet脚本的引号之间插入文本_Text_Insert_Applescript_Quotes - Fatal编程技术网

Text 尝试在telnet脚本的引号之间插入文本

Text 尝试在telnet脚本的引号之间插入文本,text,insert,applescript,quotes,Text,Insert,Applescript,Quotes,很抱歉,刚开始编写Applescript,非常感谢您的帮助 我试图创建一个脚本,将剪贴板中的文本粘贴到telnet命令的中间。输出需要在同一个窗口中,并且看起来像这样: I8,A,001 Q102,024 q448 rN S4 D15 ZT JF O R71,0 f100 N B264,65,2,UA0,2,4,56,B,"100000000045" A203,82,2,1,2,2,N,"xxxxx" P1 第13行引用的12位数字是我需要插入的数字 这是我到目前为止编写的代码,但它不起作用:

很抱歉,刚开始编写Applescript,非常感谢您的帮助

我试图创建一个脚本,将剪贴板中的文本粘贴到telnet命令的中间。输出需要在同一个窗口中,并且看起来像这样:

I8,A,001
Q102,024
q448
rN
S4
D15
ZT
JF
O
R71,0
f100
N
B264,65,2,UA0,2,4,56,B,"100000000045"
A203,82,2,1,2,2,N,"xxxxx"
P1
第13行引用的12位数字是我需要插入的数字

这是我到目前为止编写的代码,但它不起作用:

tell application "Terminal"

    do script "telnet xxx.xxx.xx.xx xxxx"
    delay 1
    do script "I8,A,001" in window 1
    do script "Q102,024" in window 1
    do script "q448" in window 1
    do script "rN" in window 1
    do script "S4" in window 1
    do script "D15" in window 1
    do script "ZT" in window 1
    do script "JF" in window 1
    do script "O" in window 1
    do script "R71,0" in window 1
    do script "f100" in window 1
    do script "N" in window 1
    do script "B264,65,2,UA0,2,4,56,B,\""
    tell application "System Events"
        tell application process "Terminal" in window 1
            keystroke "v" using {command down}
        end tell
        keystroke "\""
        keystroke return
        do script "\"A203,82,2,1,2,2,N,\"xxxxx\""
        do script "P1"
        keystroke return
    end tell
end tell

只要我尝试使用命令V粘贴,它就会退出终端窗口,并将剪贴板上的内容粘贴到脚本上,它不会让我告诉它留在终端窗口1。

您不需要使用命令V将剪贴板内容放入终端窗口。Applescript可以获取剪贴板,然后在编写脚本之前将其添加到字符串的另一部分。像这样的工作。。。当然,您不需要代码的第一行,因为剪贴板应该已经具有该值

set the clipboard to "100000000045"

set t1 to "B264,65,2,UA0,2,4,56,B,\""
set t2 to the clipboard
set t to t1 & t2 & "\""
do script t in window 1

这就是我最后用来让它工作的东西,以防其他人需要它:

告诉应用终端

do script "telnet xxx.xxx.xx.xx xxxx"
delay 1
do script "I8,A,001" in window 1
do script "Q102,024" in window 1
do script "q448" in window 1
do script "rN" in window 1
do script "S4" in window 1
do script "D15" in window 1
do script "ZT" in window 1
do script "JF" in window 1
do script "O" in window 1
do script "R71,0" in window 1
do script "f100" in window 1
do script "N" in window 1
set t1 to "B264,65,2,UA0,2,4,56,B,\""
set t2 to the clipboard
set t to t1 & t2 & "\""
do script t in window 1
do script "A203,82,2,1,2,2,N,\"xxxxx\"" in window 1
do script "P1" in window 1
结束语


谢谢雷格斯的帮助

谢谢,但剪贴板部分不会总是相同的12位数字。每次都是唯一的12位数字。12位数字是11位数字加上唯一或连续UPC-a条形码的校验和。没关系。正如我提到的,去掉第一行代码。我把它放在那里只是为了测试脚本。剪贴板上的任何内容都将进入字符串,因此没有问题。只需将代码的最后一行do脚本和整个tell application System Events部分替换为我的代码的第2行到第5行,它就可以工作了。有没有办法编写一个唯一的11位数字的脚本,然后对UPC-a进行校验和,然后在引号中使用它,而不是使用命令V?现在我正在使用Excel创建序列号和一个等式来添加校验和。