bash скрипт

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Аватара пользователя
./VanGog
Сообщения: 24
ОС: openSUSE 86x64

bash скрипт

Сообщение ./VanGog »

Как написать bash скрипт исходя из этих задач
1. приконектится к ftp и ввести пароли
2. сделать команду lcd /home
2. сделать команду put files.tar.gz
3. удалить на удалённом сервере закачанный файл files.tar.gz

(неплохо было бы если бы он запускался повторно после выполнения)
зачем это нужно ? все же знают соотношение 1/4 ))
Верные слова неизящны, изящные слова неверны
Спасибо сказали:
Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin

Re: bash скрипт

Сообщение Bolverk »

попробуй какой-нибудь продвинутый фтп-клиент типа ncftp, lftp И т.п.
Спасибо сказали:
Аватара пользователя
./VanGog
Сообщения: 24
ОС: openSUSE 86x64

Re: bash скрипт

Сообщение ./VanGog »

такая конструкция верна ?

#!/bin/bash
ftp -n << EOF

open ftp.host.ru
user admin
password 55555

lcd /home
put files.tar.gz

quit

EOF
Верные слова неизящны, изящные слова неверны
Спасибо сказали:
Аватара пользователя
Bolverk
Бывший модератор
Сообщения: 1571
ОС: Cygwin

Re: bash скрипт

Сообщение Bolverk »

вроде да, попробуй.
Спасибо сказали:
Аватара пользователя
./VanGog
Сообщения: 24
ОС: openSUSE 86x64

Re: bash скрипт

Сообщение ./VanGog »

не , непрокатил
Верные слова неизящны, изящные слова неверны
Спасибо сказали:
Аватара пользователя
BuGfiX
Сообщения: 78
ОС: slackware-current

Re: bash скрипт

Сообщение BuGfiX »

а нужен именно bash? expect не подойдет?
$ autoexpect -f script ftp ftp.host.ru
и далее действия
Спасибо сказали:
Аватара пользователя
./VanGog
Сообщения: 24
ОС: openSUSE 86x64

Re: bash скрипт

Сообщение ./VanGog »

BuGfiX писал(а):
29.09.2006 18:16
а нужен именно bash? expect не подойдет?
$ autoexpect -f script ftp ftp.host.ru
и далее действия

а точнее можно ? логин , пасс , синтаксис незнаю
Верные слова неизящны, изящные слова неверны
Спасибо сказали:
Аватара пользователя
./VanGog
Сообщения: 24
ОС: openSUSE 86x64

Re: bash скрипт

Сообщение ./VanGog »

#!/bin/sh
ftp -i -n -v ftp.server.ru << EOF
user ${username} ${password}
cd /some/dir
put some_shit_file
bye

EOF

Такая конструкция правильная.
только я непонял как логин и пароль вставить.
Кто разбирается вставьте полиз в пример
user = user@user
pass = userpass
Верные слова неизящны, изящные слова неверны
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: bash скрипт

Сообщение diesel »

./VanGog писал(а):
29.09.2006 20:41
#!/bin/sh
username='user@user'
password='userpass'
ftp -i -n -v ftp.server.ru << EOF
user ${username} ${password}
cd /some/dir
put some_shit_file
bye

EOF


А вообще вот так:

lftp -u username,password -e 'mput my.file.tar.gz; quit' ftp.domain.com

ИМХО удобней :)
lftp есть практически в любой системе.
Спасибо сказали:
Аватара пользователя
moog
Сообщения: 599
ОС: Archlinux

Re: bash скрипт

Сообщение moog »

Чтобы не создавать по пустяку тему, напишу здесь. Как можно получить ip интерфейса ppp0 ? Мне нужно использовать ip в переменной, но как узнать ip без избыточной информации ?
Спасибо сказали:
Аватара пользователя
moog
Сообщения: 599
ОС: Archlinux

Re: bash скрипт

Сообщение moog »

Неужели никто не знает ?
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: bash скрипт

Сообщение allez »

Вам помогут grep и awk. Вместо awk можно использовать cut.

P.S. А новую тему создать все-таки стоило. Облегчили бы жизнь как модераторам, так и многим другим, которых интересует этот вопрос.
Спасибо сказали:
Аватара пользователя
moog
Сообщения: 599
ОС: Archlinux

Re: bash скрипт

Сообщение moog »

В этом случае нужно использовать какой-то хитрый греп, что я не умею.
Спасибо сказали:
Аватара пользователя
router
Сообщения: 363
ОС: Debian, на работе rhel

Re: bash скрипт

Сообщение router »

goom

Код: Выделить всё

/sbin/ifconfig ppp0 | sed -n 's/^.*inet\ addr\:\([0-9\.]*\).*$/\1/p'

годится?
Спасибо сказали:
Аватара пользователя
moog
Сообщения: 599
ОС: Archlinux

Re: bash скрипт

Сообщение moog »

Отлично, спасибо ! Хотелось бы почитать доки по грепам, а то чувствую, не обойтись без них =(.
Спасибо сказали:
Аватара пользователя
estarchak
Сообщения: 1368
Статус: Оракловод

Re: bash скрипт

Сообщение estarchak »

man grep
man sed
man awk
Дети любят тигра больше, чем Пржевальский лошадей. © Тимур Шаов.

Топик не читал, но внимательно просмотрел.
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: bash скрипт

Сообщение diesel »

Вот еще такой вариант можно:

Код: Выделить всё

/sbin/ifconfig ppp0 |grep -oP "inet addr:(\d{1,3}(\.|\s)){4}"
Спасибо сказали: