



如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
中药壶http://www.kavino.net/,真空搅拌机http://www.cn-herun.com/ shell如何自动输入密码,shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量、条件、算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多。 shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量、条件、算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多。 但是有时候我们可能会需要实现和交互程序如ftp,telnet服务器等进行交互的功能,这时候我们需要用到shell的自动交互功能. 最简单的例子就是创建用户,我创建100个用户,初始密码为123,那么要是挨着passwdusername,交互性输入密码,那不得疯掉,但是脚本里应该怎么写呢?将密码123,输入到passwd命令? 本文收集了较常用交互方法,并进行了比较和总结。 自动交互方法一:利用命令的自带参数,将标准输入作为手动输入的内容 自动交互最关键的就是交互信息的自动输入,首先联想到文件重定向,在shell编程中有这样一种用法(参考Linux与UNIXSHELL编程指南chapt5.7):"command<<delimiter从标准输入中读入,直至遇到delimiter分界符。" 重定向操作符command<<delimiter是一种非常有用的命令,shell将分界符delimiter之后直至下一个同样的分界符之前的所有内容都作为输入,遇到下一个分界符,shell就知道输入结束了。最常见的delimiter分界符是EOF,当然完全可以自定为其他字符。 对于需求1要求的自动登陆ftp,并作系列操作,则可以用这种方法进行自动交互。代码如下: [yjwan@test~]$ftp-i-n192.168.21.46< userdbftpdbftp101 ls EOF 下面是得到的结果: Connectedto192.168.21.46. 220developerjailFTPserver(Version6.00LS)ready. 331Passwordrequiredfordbftp. 230Userdbftploggedin. RemotesystemtypeisUNIX. Usingbinarymodetotransferfiles. 229EnteringExtendedPassiveMode(|||54281|) 150OpeningASCIImodedataconnectionfor'/bin/ls'. total8847424 -rw-r--r--1dbftpwww9055318991Aug2814:28ewiz90.sql_2010-08-29 226Transfercomplete. 221Goodbye. 测试可以发现,如上代码使用帐号名dbftp,密码dbftp101成功登陆了ftp服务器,并进入目录,ls出当前目录的文件。 注意事项: 1这里一定要加-i,否则必定失败!! 这里ftp用的-I参数结束了交互式输入,因此可以用文本的方式自动地输入用户密码以及操作方式 如果不用-I参数,那么必定要求你手动输入密码的!!那么就达不到自动登陆的要求了 你可以manftp找到这个参数 -i关闭多文件传送中的交互式提示。请参考prompt、mget、mput和mdelete子命令,以取得多文件传送中的提示的描述。 -n防止在起始连接中的自动登录。否则,ftp命令会搜索$HOME/.netrc登录项,该登录项描述了远程主机的登录和初始化过程。请参考user子命令。 2举一反三:只要是要求输入密码的命令,一般都带有一个参数,允许你从标准输入,输入用户密码,以及操作。 其他常用的自动登陆命令的参数 1)Passwd命令 Linux下Passwd有参数 --stdin Thisoptionisusedtoindicatethatpasswdshouldreadthenewpasswordfromstandardinput,whichcanbeapipe. 所以linux下自动改变用户密码的办法就是 Echo密码|passwd–stdin用户名 Freebsd没有以上参数注意 他的方法是echopasswd|pwmoduserusername-h0 2)smbpasswd -s Thisoptioncausessmbpasswdtobesilent(i.e.notissueprompts) andtoreaditsoldandnewpasswordsfromstandardinput,rather thanf

ys****39
实名认证
内容提供者


最近下载