Существует ли способ сформировать сетевые соединения с помощью сценария оболочки?

Я хочу сформировать сетевое соединение с веб-сайтом и считать данные линию за линией и сохранить их в текстовом файле в моей системе с помощью сценариев оболочки. Я сделал это с помощью Java, где я могу считать использование объекта URLConnection в тот конкретный ресурс.
В оболочке сценарии являются Пауком WGET единственный способ сделать это? Если не, что другие пути там для чтения текстового файла из веб-сайта, проанализируйте его и сохраните его в моем локальном каталоге?

Править

Я пытался использовать использование WGET wget -o /home/user/Desktop/training.txt https://www.someurl.com. Но вывод - что-то вроде этого

--2014-04-15 00:39:15--  https://s3.amazonaws.com/hr-testcases/368/assets/trainingdata.txt
Resolving s3.amazonaws.com (s3.amazonaws.com)... 176.32.99.154
Connecting to s3.amazonaws.com (s3.amazonaws.com)|176.32.99.154|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1554016 (1.5M) [text/plain]
Saving to: ‘trainingdata.txt.1’

     0K .......... .......... .......... .......... ..........  3% 47.5K 31s
    50K .......... .......... .......... .......... ..........  6%  129K 20s
   100K .......... .......... .......... .......... ..........  9%  136K 16s
   150K .......... .......... .......... .......... .......... 13%  149K 14s
   200K .......... .......... .......... .......... .......... 16% 1.57M 11s
   250K .......... .......... .......... .......... .......... 19%  162K 10s
   300K .......... .......... .......... .......... .......... 23%  678K 9s
   350K .......... .......... .......... .......... .......... 26%  612K 7s
   400K .......... .......... .......... .......... .......... 29%  307K 7s
   450K .......... .......... .......... .......... .......... 32%  630K 6s
   500K .......... .......... .......... .......... .......... 36%  699K 5s
   550K .......... .......... .......... .......... .......... 39%  520K 5s
   600K .......... .......... .......... .......... .......... 42%  580K 4s
   650K .......... .......... .......... .......... .......... 46%  516K 4s
   700K .......... .......... .......... .......... .......... 49%  551K 3s
   750K .......... .......... .......... .......... .......... 52%  713K 3s
   800K .......... .......... .......... .......... .......... 56%  720K 3s
   850K .......... .......... .......... .......... .......... 59%  701K 2s
   900K .......... .......... .......... .......... .......... 62%  603K 2s
   950K .......... .......... .......... .......... .......... 65%  670K 2s
  1000K .......... .......... .......... .......... .......... 69%  715K 2s
  1050K .......... .......... .......... .......... .......... 72%  671K 1s
  1100K .......... .......... .......... .......... .......... 75%  752K 1s
  1150K .......... .......... .......... .......... .......... 79%  535K 1s
  1200K .......... .......... .......... .......... .......... 82%  607K 1s
  1250K .......... .......... .......... .......... .......... 85%  675K 1s
  1300K .......... .......... .......... .......... .......... 88%  727K 1s
  1350K .......... .......... .......... .......... .......... 92%  707K 0s
  1400K .......... .......... .......... .......... .......... 95%  632K 0s
  1450K .......... .......... .......... .......... .......... 98%  785K 0s
  1500K .......... .......                                    100%  931K=4.5s

2014-04-15 00:39:23 (341 KB/s) - ‘trainingdata.txt.1’ saved [1554016/1554016]

Это только, кажется, дает статистику как время, потраченное для загрузки и так далее. Это не дает, сохраняют фактические данные от URL.

1
задан 14 April 2014 в 23:13

2 ответа

Это кажется, что Вы хотите netcat,

, Netcat является известной сетевой утилитой, которая читает и пишет данные через сетевые соединения, с помощью протокола TCP/IP. Это разработано, чтобы быть надежным инструментом "бэкенда", который может использоваться непосредственно или легко управляться другими программами и сценариями. В то же время это - многофункциональный сетевой инструмент отладки и исследования, так как это может создать почти любой вид соединения, Вы нуждались бы и имеете несколько интересных встроенных возможностей.

для больше, Вы всегда можете man nc

0
ответ дан 14 April 2014 в 23:13

Команда, которую Вы выполняете, использует эти -o флаг, который делает (от man wget):

   -o logfile
   --output-file=logfile
       Log all messages to logfile.  The messages are normally reported to
       standard error.

Это на самом деле не сохраняет цель URL в тот файл, только стандартная погрешность wget. По умолчанию, wget сохраняет цель с тем же именем как удаленный файл. Сделайте, например, это

wget http://www.foo.com/index.html

сохранит файл как index.html в Вашем текущем каталоге. Для определения другого имени для файла используйте -O (КАПИТАЛ o, как в Oliver) вместо этого:

   -O file
   --output-document=file
       The documents will not be written to the appropriate files, but all
       will be concatenated together and written to file.  If - is used as
       file, documents will be printed to standard output, disabling link
       conversion.  (Use ./- to print to a file literally named -.)

       Use of -O is not intended to mean simply "use the name file instead
       of the one in the URL;" rather, it is analogous to shell
       redirection: wget -O file http://foo is intended to work like wget
       -O - http://foo > file; file will be truncated immediately, and all
       downloaded content will be written there.
0
ответ дан 14 April 2014 в 23:13

Другие вопросы по тегам:

Похожие вопросы: