home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / unix / question / 15808 < prev    next >
Encoding:
Text File  |  1993-01-21  |  11.8 KB  |  302 lines

  1. Newsgroups: comp.unix.questions
  2. Path: sparky!uunet!destroyer!cs.ubc.ca!newsserver.sfu.ca!sfu.ca!kko
  3. From: kko@fraser.sfu.ca (Samuel Ko)
  4. Subject: Re: Automatic ftp session
  5. Message-ID: <kko.727643388@sfu.ca>
  6. Sender: news@sfu.ca
  7. Organization: Simon Fraser University, Burnaby, B.C., Canada
  8. References: <35150@adm.brl.mil>
  9. Date: Thu, 21 Jan 1993 19:09:48 GMT
  10. Lines: 290
  11.  
  12. jbowyer@cis.vutbr.cs (Bowyer Jeff) writes:
  13.  
  14. >I imagine the capability exists; therefore . . .
  15.  
  16. >Would someone please send me a sample shell program that ftp's to a
  17. >site and returns a directory listing or gets a file . . . without user
  18. >intervention.
  19.  
  20. How about this one ... 
  21.  
  22. Subject: A unix script to auto-download MSDOS files from SIMTEL20 mirrors
  23.  
  24. This is yet another release of this pretty popular UNIX shell script that
  25. help you auto-download MSDOS files from /pub/msdos at oak.oakland.edu ...
  26.  
  27. ---
  28. How to use it ...
  29. 1) save this article as oakftp (or whatever name you like)
  30. 2) remove anything above #!/bin/sh
  31. 3) make this script executable (i.e. chmod u+x oakftp)
  32. 4) oakftp  directoryA file1 file2  directoryB file3 file4
  33.  
  34. ---
  35. If you favorite SIMTEL20 mirror is not oak.oakland.edu ... you can
  36. change the first two lines after the comment box to
  37.  
  38. host=                   directory=
  39. wuarchive.wustl.edu     /mirror/msdos/$1
  40. ftp.uu.net              /systems/simtel20/msdos/$1
  41. nic.funet.fi            /pub/msdos/SIMTEL20-mirror/$1
  42. src.doc.ic.ac.uk        /pub/computing/systems/ibmpc/simtel20/$1
  43. nic.switch.ch           /mirror/msdos/$1
  44. archie.au               /micros/pc/simtel-20/$1
  45. nctuccca.edu.tw         /SIMTEL20/msdos/$1
  46.  
  47. ---
  48. And as to the line  echo user anonymous -logname@hostname, you can 
  49. also change it to  echo user anonymous -your_email_adresss 
  50.  
  51. ---
  52. As usual, I hope you will like this script, and any comments, suggestions
  53. and flames are very much welcomed. Samuel
  54.  
  55. ------------------------------- CUT HERE ---------------------------------
  56. #!/bin/sh
  57. #######################################################################
  58. #                                                                     #
  59. #     oakftp ...                                                      #
  60. #     Shell script to auto-ftp files from the pub/msdos               #
  61. #     directory at OAK.oakland.edu                                    #
  62. #     Written by Alvin Khoo (khoo@fraser.sfu.ca) based on Jon         #
  63. #     Granrose's getfile ...                                          #
  64. #     Modified and updated by Samuel Ko (kko@sfu.ca) ... 93/01/17 ... #
  65. #                                                                     #
  66. #######################################################################
  67.  
  68. host=oak.oakland.edu
  69. directory=pub/msdos/$1
  70.  
  71.  
  72. if [ $# -lt 2 ]
  73. then
  74.     echo "Usage: $0 directoryA file1 file2 ... directoryB file3 file4 ..."
  75.         echo "Example: $0 trojan-pro scanv99.zip arc-lbr shez83.zip"
  76.     exit 1
  77. else
  78.  
  79. (
  80.     echo user anonymous -logname@hostname
  81.     echo hash
  82.     echo binary
  83.     echo cd $directory
  84. while test -n "$1"
  85. do
  86.    case $1 in
  87.     4dos)         echo cd .. ; echo cd 4dos;;
  88.     abc)         echo cd .. ; echo cd abc;;
  89.     ada)         echo cd .. ; echo cd ada;;
  90.     ai)             echo cd .. ; echo cd ai;;
  91.         aijournal)     echo cd .. ; echo cd aijournal;;
  92.     allcharge)     echo cd .. ; echo cd allcharge;;
  93.     apl)         echo cd .. ; echo cd apl;;
  94.     arc?lbr)     echo cd .. ; echo cd arc-lbr;;
  95.     asm?mag)     echo cd .. ; echo cd asm-mag;;
  96.         asmutl)     echo cd .. ; echo cd asmutl;;
  97.         astronomy)      echo cd .. ; echo cd astronomy;;
  98.     at)         echo cd .. ; echo cd at;;
  99.     autocad)     echo cd .. ; echo cd autocad;;
  100.     awk)         echo cd .. ; echo cd awk;;
  101.     basic)         echo cd .. ; echo cd basic;;
  102.     batutl)     echo cd .. ; echo cd batutl;;
  103.     bbs)         echo cd .. ; echo cd bbs;;
  104.     bbsdoors)     echo cd .. ; echo cd bbsdoors;;
  105.     bbslists)     echo cd .. ; echo cd bbslists;;
  106.     bible)         echo cd .. ; echo cd bible;;
  107.     biology)        echo cd .. ; echo cd biology;;
  108.         books)         echo cd .. ; echo cd books;;
  109.     borland)     echo cd .. ; echo cd borland;;
  110.     c)         echo cd .. ; echo cd c;;
  111.     cad)         echo cd .. ; echo cd cad;;
  112.     calculator)     echo cd .. ; echo cd calculator;;
  113.     Case)           echo cd .. ; echo cd case;;
  114.         catalog)     echo cd .. ; echo cd catalog;;
  115.     cdrom)          echo cd .. ; echo cd cdrom;;
  116.         chemistry)      echo cd .. ; echo cd chemistry;;
  117.         cis)         echo cd .. ; echo cd cis;;
  118.     citadel)     echo cd .. ; echo cd citadel;;
  119.     clipper)     echo cd .. ; echo cd clipper;;
  120.     cmplngmag)     echo cd .. ; echo cd cmplngmag;;
  121.     cmu?pcip)     echo cd .. ; echo cd cmu-pcip;;
  122.     cobol)         echo cd .. ; echo cd cobol;;
  123.     compatibles)     echo cd .. ; echo cd compatibles;;
  124.     compress)     echo cd .. ; echo cd compress;;
  125.     compute?pc)     echo cd .. ; echo cd compute-pc;;
  126.     cplusplus)     echo cd .. ; echo cd cplusplus;;
  127.     crossasm)     echo cd .. ; echo cd crossasm;;
  128.     crossref)     echo cd .. ; echo cd crossref;;
  129.     database)     echo cd .. ; echo cd database;;
  130.     dbase)         echo cd .. ; echo cd dbase;;
  131.         dbms?mag)       echo cd .. ; echo cd dbms-mag;;
  132.     ddjmag)     echo cd .. ; echo cd ddjmag;;
  133.         demacs)         echo cd .. ; echo cd demacs;;
  134.     deskaccess)     echo cd .. ; echo cd deskaccess;;
  135.     deskjet)     echo cd .. ; echo cd deskjet;;
  136.     deskpub)     echo cd .. ; echo cd deskpub;;
  137.     desqview)     echo cd .. ; echo cd desqview;;
  138.     dirutl)     echo cd .. ; echo cd dirutl;;
  139.     disasm)     echo cd .. ; echo cd disasm;;
  140.     djgpp)          echo cd .. ; echo cd djgpp;;
  141.         dskutl)     echo cd .. ; echo cd dskutl;;
  142.         dv?x)           echo cd .. ; echo cd dv-x;;
  143.     editor)     echo cd .. ; echo cd editor;;
  144.     education)     echo cd .. ; echo cd education;;
  145.     eel)         echo cd .. ; echo cd eel;;
  146.     ega)         echo cd .. ; echo cd ega;;
  147.     electrical)     echo cd .. ; echo cd electrical;;
  148.         emulators)     echo cd .. ; echo cd emulators;;
  149.         ezycom)         echo cd .. ; echo cd ezycom;;
  150.         fido)           echo cd .. ; echo cd fido;;
  151.     filedocs)     echo cd .. ; echo cd filedocs;;
  152.     filutl)     echo cd .. ; echo cd filutl;;
  153.     finance)     echo cd .. ; echo cd finance;;
  154.     flowchart)     echo cd .. ; echo cd flowchart;;
  155.     formgen)     echo cd .. ; echo cd formgen;;
  156.     forth)         echo cd .. ; echo cd forth;;
  157.     fortran)     echo cd .. ; echo cd fortran;;
  158.     fossil)     echo cd .. ; echo cd fossil;;
  159.     freemacs)     echo cd .. ; echo cd freemacs;;
  160.     genealogy)     echo cd .. ; echo cd genealogy;;
  161.         genie)          echo cd .. ; echo cd genie;;
  162.         geography)      echo cd .. ; echo cd geography;;
  163.         geoworks)       echo cd .. ; echo cd geoworks;;
  164.     gif)         echo cd .. ; echo cd gif;;
  165.         gifnews)        echo cd .. ; echo cd gifnews;;
  166.     gnuish)     echo cd .. ; echo cd gnuish;;
  167.     graph)         echo cd .. ; echo cd graph;;
  168.         graphics)       echo cd .. ; echo cd graphics;;
  169.         gts?music)      echo cd .. ; echo cd gts-music;;
  170.     hamradio)     echo cd .. ; echo cd hamradio;;
  171.     handicap)     echo cd .. ; echo cd handicap;;
  172.         hebrew)         echo cd .. ; echo cd hebrew;;
  173.     hypertext)     echo cd .. ; echo cd hypertext;;
  174.         iconlang)       echo cd .. ; echo cd iconlang;;
  175.     info)         echo cd .. ; echo cd info;;
  176.     inside?tp)     echo cd .. ; echo cd inside-tp;;
  177.     irit)         echo cd .. ; echo cd irit;;
  178.     ka9q?tcpip)     echo cd .. ; echo cd ka9q-tcpip;;
  179.     kermit)     echo cd .. ; echo cd kermit;;
  180.     keyboard)     echo cd .. ; echo cd keyboard;;
  181.     lan)         echo cd .. ; echo cd lan;;
  182.         langtutor)      echo cd .. ; echo cd langtutor;;
  183.     lantimes)     echo cd .. ; echo cd lantimes;;
  184.     laptop)     echo cd .. ; echo cd laptop;;
  185.     laser)         echo cd .. ; echo cd laser;;
  186.     legal)         echo cd .. ; echo cd legal;;
  187.     linguistics)     echo cd .. ; echo cd linguistics;;
  188.     lisp)         echo cd .. ; echo cd lisp;;
  189.         literature)     echo cd .. ; echo cd literature;;
  190.     logo)         echo cd .. ; echo cd logo;;
  191.     lotus123)     echo cd .. ; echo cd lotus123;;
  192.     mac)         echo cd .. ; echo cd mac;;
  193.     mapping)     echo cd .. ; echo cd mapping;;
  194.     math)         echo cd .. ; echo cd math;;
  195.     max)         echo cd .. ; echo cd max;;
  196.     menu)         echo cd .. ; echo cd menu;;
  197.     microcorn)     echo cd .. ; echo cd microcorn;;
  198.     microsoft)     echo cd .. ; echo cd microsoft;;
  199.     modem)         echo cd .. ; echo cd modem;;
  200.     modula2)     echo cd .. ; echo cd modula2;;
  201.         mormon)         echo cd .. ; echo cd mormon;;
  202.     mouse)         echo cd .. ; echo cd mouse;;
  203.     msjournal)     echo cd .. ; echo cd msjournal;;
  204.     mswindows)     echo cd .. ; echo cd mswindows;;
  205.     music)         echo cd .. ; echo cd music;;
  206.     ncsatelnet)     echo cd .. ; echo cd ncsatelnet;;
  207.     network)     echo cd .. ; echo cd network;;
  208.     neural?nets)     echo cd .. ; echo cd neural-nets;;
  209.         notabene)       echo cd .. ; echo cd notabene;;
  210.     opus)         echo cd .. ; echo cd opus;;
  211.     packet)     echo cd .. ; echo cd packet;;
  212.     pascal)     echo cd .. ; echo cd pascal;;
  213.     pc?jr)         echo cd .. ; echo cd pc-jr;;
  214.     pcmag)         echo cd .. ; echo cd pcmag;;
  215.     pcpursuit)     echo cd .. ; echo cd pcpursuit;;
  216.     pcresource)     echo cd .. ; echo cd pcresource;;
  217.     pctech)     echo cd .. ; echo cd pctech;;
  218.     pctechniques)     echo cd .. ; echo cd pctechniques;;
  219.     perl)         echo cd .. ; echo cd perl;;
  220.     pgmutl)     echo cd .. ; echo cd pgmutl;;
  221.     pibterm)     echo cd .. ; echo cd pibterm;;
  222.     pilot)         echo cd .. ; echo cd pilot;;
  223.         pktvrdr)        echo cd .. ; echo cd pktdrvr;;
  224.     pli)         echo cd .. ; echo cd pli;;
  225.     plot)         echo cd .. ; echo cd plot;;
  226.     postscript)     echo cd .. ; echo cd postscript;;
  227.     preprocess)     echo cd .. ; echo cd preprocess;;
  228.     printer)     echo cd .. ; echo cd printer;;
  229.     procomm)     echo cd .. ; echo cd procomm;;
  230.     prodigy)     echo cd .. ; echo cd prodigy;;
  231.     progjourn)     echo cd .. ; echo cd progjourn;;
  232.     prolog)     echo cd .. ; echo cd prolog;;
  233.     qbasic)     echo cd .. ; echo cd qbasic;;
  234.     qedit)         echo cd .. ; echo cd qedit;;
  235.         qemm)           echo cd .. ; echo cd qemm;;
  236.     qmodem)     echo cd .. ; echo cd qmodem;;
  237.     qpascal)     echo cd .. ; echo cd qpascal;;
  238.         qtrdeck)        echo cd .. ; echo cd qtrdeck;;
  239.     ramdisk)     echo cd .. ; echo cd ramdisk;;
  240.     rbbs?pc)     echo cd .. ; echo cd rbbs-pc;;
  241.     screen)     echo cd .. ; echo cd screen;;
  242.         security)       echo cd .. ; echo cd security;;
  243.         simulation)     echo cd .. ; echo cd stimulation;;
  244.     small?c)     echo cd .. ; echo cd small-c;;
  245.     smalltalk)     echo cd .. ; echo cd smalltalk;;
  246.     snobol4)     echo cd .. ; echo cd snobol4;;
  247.     sound)         echo cd .. ; echo cd sound;;
  248.     spreadsheet)     echo cd .. ; echo cd spreadsheet;;
  249.     sprint)     echo cd .. ; echo cd sprint;;
  250.     starlink)     echo cd .. ; echo cd starlink;;
  251.     starter)     echo cd .. ; echo cd starter;;
  252.     statistics)     echo cd .. ; echo cd statistics;;
  253.         stunnpc)        echo cd .. ; echo cd stunnpc;;
  254.     surfmodl)     echo cd .. ; echo cd surfmodl;;
  255.     swap)         echo cd .. ; echo cd swap;;
  256.     sysutl)     echo cd .. ; echo cd sysutl;;
  257.         tagbbs)         echo cd .. ; echo cd tagbbs;;
  258.     taxes)         echo cd .. ; echo cd taxes;;
  259.         teaching)       echo cd .. ; echo cd teaching;;
  260.     telegard)     echo cd .. ; echo cd telegard;;
  261.     telix)         echo cd .. ; echo cd telix;;
  262.     tex)         echo cd .. ; echo cd tex;;
  263.     tiff)         echo cd .. ; echo cd tiff;;
  264.     trojan?pro)     echo cd .. ; echo cd trojan-pro;;
  265.     turbo?c)     echo cd .. ; echo cd turbo-c;;
  266.     turbobas)     echo cd .. ; echo cd turbobas;;
  267.     turbopas)     echo cd .. ; echo cd turbopas;;
  268.         turbovis)       echo cd .. ; echo cd turbovis;;
  269.     txtutl)     echo cd .. ; echo cd txtutl;;
  270.         ubasic)         echo cd .. ; echo cd ubasic;;
  271.     uemacs)     echo cd .. ; echo cd uemacs;;
  272.     uucp)         echo cd .. ; echo cd uucp;;
  273.     ventura)     echo cd .. ; echo cd ventura;;
  274.     vga)         echo cd .. ; echo cd vga;;
  275.         visbasic)       echo cd .. ; echo cd visbasic;;
  276.         viscii)         echo cd .. ; echo cd viscii;;
  277.         voice)          echo cd .. ; echo cd voice;;
  278.     voicemail)     echo cd .. ; echo cd voicemail;;
  279.     waffle)     echo cd .. ; echo cd waffle;;
  280.     weather)        echo cd .. ; echo cd weather;;
  281.         windows3)     echo cd .. ; echo cd windows3;;
  282.     wordperf)     echo cd .. ; echo cd wordperf;;
  283.     worldmap)     echo cd .. ; echo cd worldmap;;
  284.     wpj?mag)        echo cd .. ; echo cd wpj-mag;;
  285.         x?10)         echo cd .. ; echo cd x-10;;
  286.     xlisp)         echo cd .. ; echo cd xlisp;;
  287.     zip)         echo cd .. ; echo cd zip;;
  288.     zmodem)     echo cd .. ; echo cd zmodem;;
  289.     zoo)         echo cd .. ; echo cd zoo;;
  290.     *.*)        echo get $1;;
  291.       esac
  292. echo pwd
  293. shift
  294. done
  295.     echo bye
  296.  
  297. ) | ftp -n -v $host 
  298.  
  299. fi
  300.  
  301.  
  302.