您所在位置: 网站首页 / shell如何自动输入密码.doc / 文档详情
shell如何自动输入密码.doc 立即下载
2024-08-17
约2.6千字
约4页
0
31KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

shell如何自动输入密码.doc

shell如何自动输入密码.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

10 金币

下载文档

如果您无法下载资料,请参考说明:

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
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

shell如何自动输入密码

文档大小:31KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用