[MacOS]shell执行自动输入密码之<<EOF(重定向)方法

2017年12月15日 其他资源 7条评论 阅读4835次

[MacOS]shell执行自动输入密码之<<EOF(重定向)方法


MacOS下,很多时候经常为提高效率,自己写一些自动化执行的脚本。
自己写一些脚本把流程式的工作都做了,确实再效率上提高了不少,但经常下面一个场景困惑我。

很多操作需要管理员身份的权限,sudo类似的。
一旦出现shell过程中出现让输入密码的情况,就直接把整个批量的shell处理流给终端了,并不符合我们期望的无人值守的结果。

因此,我们希望shell命令在执行处理流时能自动输入密码。

自动输入密码有多张方式,expect和<<(重定向)方式。expect需要Mac机器上额外安装expect的软件支持包,我没有采用,本文主要介绍的是<<EOF(重定向)方式。


<<重定向的最简单基本使用如下。

 EOF只是一个分界符,当然也可以用abcde替换。
 当shell遇到<<时,它知道下一个词是一个分界符。在该分界符以后的内容都被当作输入,直到shell又看到该分界符(结束分解符必须位于单独的一行)。
 此分界符可以是所定义的任何字符串,其实,不一定要用EOF,只要是“内容段”中没有出现的字符串,都可以用来替代EOF,完全可以换成abcde之类的字符串,只是一个起始和结束的标志罢了。
 EOF分解符一起一后配对出现,中间的内容将以标准输入的形式输入到”交互式程序“。


示例:

sudo chmod +x jileniao.net_shell_auto_password_test.sh<<EOF
jileniao.net_mac_admin_password
EOF



文字描述一下就是,在需要输入密码的命令行后面增加<<EOF
接下来一行,就是密码(jileniao.net_mac_admin_password)
在换一行,EOF结束

其他都是正常的了。

这样写,固然使用没有问题,但隐约中还是感觉不舒服,毕竟是密码就以明文的形式直接暴露在shell文件中了,如果涉及登录远程服务器之类的操作,远程服务器的密码也就直接泄露了。

很容易想到一个改良方案,就是把我们的密码在shell执行时,加入到参数中。如,

./jileniao.net_shell_auto_password_test.sh jileniao.net_mac_admin_password



然后shell文件也改造一下,开始时接收一下执行参数,并保存到变量中。

PASSWORD=$1
if [ ! -n "$PASSWORD" ]; then
  echo "PASSWORD is NULL"
  exit 1
fi
sudo chmod +x jileniao.net_shell_auto_password_test.sh<<EOF
"$PASSWORD"
EOF




这样的结果,貌似也很难让人满意,正常在终端中系统提示我们输入密码时,我们输入的密码都是不可见的,连星号*都不会出现在屏幕上,但现在密码虽然没有在shell文件中明文暴露,确在命令行终端直接显示出来了,技术怎么可以止步,在MacOS中,我们知道有个地方是存放用户密码等凭证的。

这时大家知道新的改良思路了吧,我们可以把密码放到系统的钥匙串访问(KeyChain),然后在shell中调用,听起来挺不错的。不过这个方法还是在理论上可行,实际还没操作过,以后可以实践操练一下shell中读取钥匙串访问(KeyChain)中存储的密码。


分享本文至:

WRITTEN BY

avatar
本文标签:shellmac
看了本文是不是觉得很赞,那就赶紧点击下面按钮分享给身边的朋友吧!

7 条评论

  1. avatar rondamice

    <a href="http://www.tvpropria.com/nike-free-tr-fit-3-gris-and-rosado-runningc">nike free tr fit 3 gris and rosado</a> <a href="http://www.cvpekerjaan.com/nike-air-max-270-arrives-in-blanco-negro-zapatosj">nike air max 270 arrives in blanco negro</a> <a href="http://www.onoglobal.com/nike-zoom-winflo-2-gris-fonctionnement-chaussures-chaussuresa">nike zoom winflo 2 gris fonctionnement chaussures</a> <a href="http://www.tvbrandenburg.com/adidas-originals-superstar-2-fl%C3%A5den-foota">adidas originals superstar 2 fl氓den</a> <a href="http://www.coderthetyler.com/zx-flux-guld-jewelry-runningd">zx flux guld jewelry</a> <a href="http://www.sadnauka.com/james-harden-away-jersey-nflh">james harden away jersey</a>
    rondamice http://www.rondamice.com/

  2. avatar kiprahrakyat

    <a href="http://www.realchiyouth.com/nike-mercurial-vapor-blau-schuhel">nike mercurial vapor blau</a> <a href="http://www.djhomeimprove.com/adidas-pr%C3%B8dator-junior-gloves-skoe">adidas pr酶dator junior gloves</a> <a href="http://www.mybigrefund.com/asics-gel-lyte-5-sort-and-orange-footg">asics gel lyte 5 sort and orange</a> <a href="http://www.gamesiamfree.com/nike-free-3.0-v4-herre-bl%C3%A5-flame-sneakerd">nike free 3.0 v4 herre bl氓 flame</a> <a href="http://www.cavechezludo.com/nike-roshe-run-blum%C3%A4nner-wei%C3%9F-rosa-schuhee">nike roshe run blum盲nner wei脽 rosa</a> <a href="http://www.rxmedsuk.com/air-jordan-retro-1-b%C3%B8rn-bl%C3%A5-lyser%C3%B8d-footf">air jordan retro 1 b酶rn bl氓 lyser酶d</a>
    kiprahrakyat http://www.kiprahrakyat.com/

  3. avatar velvetwifi

    <a href="http://www.maytorrent.com/blanc-and-rouge-nike-free-5.0-chaussuresh">blanc and rouge nike free 5.0</a> <a href="http://www.gplandiet.com/m%C3%A4nner-nike-air-max-2010-grau-gr%C3%BCn-schuheh">m盲nner nike air max 2010 grau gr眉n</a> <a href="http://www.mizenbouche.com/womens-nike-air-max-360-blue-shoesk">womens nike air max 360 blue</a> <a href="http://www.owenandfarney.com/herre-gr%C3%B8n-converse-sko-skoj">herre gr酶n converse sko</a> <a href="http://www.escortsinoz.com/nike-lebron-soldier-10-gelb-schuheh">nike lebron soldier 10 gelb</a> <a href="http://www.itsallfetish.com/nike-internationalist-light-green-black-shoesk">nike internationalist light green black</a>
    velvetwifi http://www.velvetwifi.com/

  4. avatar akhbarsanaye

    <a href="http://www.chocopictures.com/denver-nuggets-bucket-hat-hath">denver nuggets bucket hat</a> <a href="http://www.baluntan.com/rojo-p%C3%BArpura-hombres-nike-air-max-2018-zapatos-zapatosl">rojo p煤rpura hombres nike air max 2018 zapatos</a> <a href="http://www.anderonedream.com/adidas-yeezy-boost-350-low-kanye-west-green-shoesk">adidas yeezy boost 350 low kanye west green</a> <a href="http://www.variaponsel.com/svart-and-rosa-adidas-pr%C3%B8dator-obuvi">svart and rosa adidas pr酶dator</a> <a href="http://www.allmydibs.com/adidas-gazelle-indoor-svart-obuvk">adidas gazelle indoor svart</a> <a href="http://www.macusaa.com/air-jordan-retro-4.5-gr%C3%A5-rosa-obuvi">air jordan retro 4.5 gr氓 rosa</a>
    akhbarsanaye http://www.akhbarsanaye.com/

  5. avatar lavaforchange

    <a href="http://www.colintilley.com/nike-air-force-1-storm-bl%C3%A5-vivid-oransje-obuvi">nike air force 1 storm bl氓 vivid oransje</a> <a href="http://www.xthbgc.com/nike-zoom-structure-20-kvinners-gr%C3%A5-r%C3%B8d-obuvp">nike zoom structure 20 kvinners gr氓 r酶d</a> <a href="http://www.iberishop.com/nike-lebron-ambassador-9-gull-himmelen-bl%C3%A5-obuvi">nike lebron ambassador 9 gull himmelen bl氓</a> <a href="http://www.karmacanix.com/nike-air-griffey-max-1-rojo-zapatosp">nike air griffey max 1 rojo</a> <a href="http://www.tobepartridge.com/coach-op-art-large-yellow-wallets-coachh">coach op art large yellow wallets</a> <a href="http://www.shopdunks.com/air-jordan-retro-28-blue-yellow-shoesj">air jordan retro 28 blue yellow</a>
    [url=http://www.lavaforchange.com/]lavaforchange[/url]

  6. avatar templabor

    <a href="http://www.weheartwebsites.net/reebok-zigwild-tr-2-svart-schuhed">reebok zigwild tr 2 svart</a> <a href="http://www.wirepony.net/nike-hyperrev-2017-svart-kitchen-chaussuresd">nike hyperrev 2017 svart kitchen</a> <a href="http://www.workingconcept.net/nike-air-jordan-5-retro-hvit-fire-r%C3%B8d-svart-sko-obuvf">nike air jordan 5 retro hvit fire r酶d svart sko</a> <a href="http://www.worldoverseas.net/nike-blazer-mid-noirened-bleu-dark-tan-exclusive-kurpese">nike blazer mid noirened bleu dark tan exclusive</a> <a href="http://www.writingwithmedia.net/asics-gel-kinsei-4-lila-silber-schuhed">asics gel kinsei 4 lila silber</a> <a href="http://www.yorktownpennysaver.net/nike-5.0-gr%C3%B8nn-glow-butyg">nike 5.0 gr酶nn glow</a>
    templabor http://www.templabor.net/

  7. avatar 八角网赚站

    路过,支持一下

欢迎留言




用户登录

sitemap