sh脚本except行报错问题

脚本内容:

[[email protected] scripts]# cat fenfa_sshkey.exp

[[email protected] scripts]# cat fenfa_sshkey.exp

#!/usr/bin/expect

if { $argc != 2 } {

send_user "usage: expect fenfa_sshkey.exp file host\n"

exit

}

#define var

set file [lindex $argv 0]

set host [lindex $argv 1]

set password "123456"

spawn ssh-copy-id -i $file " $host"

expect {

"yes/no"    {send "yes\r";exp_continue}

"*password" {send "$password\r"}

}

expect eof

exit -onexit {

send_user "Oldboy say good bye to you!\n"

}

执行脚本,报错

[[email protected] scripts]# /bin/sh -x /server/scripts/fenfa_sshkey.exp

/server/scripts/fenfa_sshkey.exp: line 15: syntax error near unexpected token `}‘

/server/scripts/fenfa_sshkey.exp: line 15: `}‘

解决办法:

就多了个空格而已,而已,而已

时间: 2024-11-17 15:49:29

sh脚本except行报错问题的相关文章

ubuntu14.04 shell脚本用select报错

在练习http://wiki.ubuntu.org.cn/Shell%E7%BC%96%E7%A8%8B%E5%9F%BA%E7%A1%80中的select时,发现直接sh xx.sh不能执行成功. 脚本内容: #!/bin/bash echo "What is your favourite OS?" select var in "Linux" "Gnu Hurd" "Free BSD" "Other";d

Ubuntu下sh *.sh使用==操作符执行报错

----<鸟哥的Linux私房菜--基础篇>学习笔记 ubuntu默认的sh是连接到dash,而我们写shell脚本时使用的时bash.bash和dash在一些方面是不兼容的.因此执行同一个脚本,两者结果不一样,可能用./*sh可以执行,而sh *.sh报错. 为了正确实行使用./*.h 或者  bash *.sh  或者把==换成=(不兼容部分) 也可以直接让系统不使用dash....Ubuntu之所以使用dash是因为其体积小,兼容性高,但是悲催的时,一些bash可执行的脚步在dash下不

创建maven项目pom.xml第一行报错

之前也创建过几次maven项目,也是第一行报错,之前直接是右键项目强制更新maven好像就解决了,这次遇见这个问题使用这个方法好像不起作用了,给的一堆英文报错又看不懂,幸好在网上看见路人甲大神提示,根据报错信息(虽然大部分看不懂)找到给出的jar文件和路径,然后根据路径找到提示的jar所在文件夹,就会发现这个文件夹没有jar包,最后只需要在网上下载这个jar放进去就好了,不知道为什么下好的maven竟然还会jar缺失.......

pom.xm首行报错Failure to transfer org.codehaus.plexus:plexus-components:pom:1.1.20

从SVN导出一个Maven项目,pom.xml首行报错: Failure to transfer org.codehaus.plexus:plexus-components:pom:1.1.20 from http://maven.oschina.net/content/groups/public/ was cached in the local repository, resolution will not be reattempted until the update interval of

MySQL执行外部sql脚本文件命令报错:unknown command &#39;\&#39;

由于编码不一致导致的 虽然大部分导出是没有问题的 但是数据表中存储包含一些脚本(富文本内容)会出现该问题,强制指定编码即可解决. mysql导入时指定编码: mysql -u root -p --default-character-set=utf8 或者在导出时后显式指定编码就不存在这个问题了: mysqldump -uroot -p --default-character-set=utf8 mydb > E://xxxx.sql MySQL执行外部sql脚本文件命令报错:unknown com

maven项目pom.xml第一行报错

maven项目pom.xml第一行报错 这是第一行:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd&q

Linux中mysql进入命令行报错:MYSQL ERROR 2003 (HY000): Can&#39;t connect to MySQL server on &#39;192.168.99.192&#39; (111)

场景:在Linux中安装mysql01和mysql02,通过VIP虚出一个VIP=192.168.99.192,mysql01为主ip为192.168.99.153,mysql02为备机ip为192.168.99.154 此时VIP在mysql01上通过 mysql01上连接VIP :mysql -h 192.168.99.192 -P 3306   结果是可以正常进入mysql命令行: 通过mysql02上远程连接VIP 会在界面上报错:mysql error 2003(HY000):Can'

导入Maven 工程pom.xml首行报错解决方法

1.利用IDE导入一个Maven工程,但是pom.xml文件首行报错,发现是maven版本需要升级 2.在pom.xml文件 增加配置 <properties> <maven-jar-plugin.version>2.6</maven-jar-plugin.version></properties> 3.以eclipse为例,菜单help->install new software Name:MavenArchiver location:http://

LR调试脚本的时候报错Error -27796:

LR调试脚本的时候报错: 1.Error -27796: Failed to connect to server "192.168.211.128:80": [10060] Connection timed out  [MsgId: MERR-27796] 2.web_url("bbs") highest severity level was "ERROR", 0 body bytes, 0 header bytes  [MsgId: MMSG-