Поместите его простой, необходимо читать больше чем в одну переменную за один раз для IFS=
создайте, чтобы иметь видимый эффект в Вашем examples1.
Вы пропускаете объем read
в примерах. Нет никакой модификации IFS в цикле в Ваших тестовых сценариях. Позвольте мне указывать точно, где делает вторую IFS, имеют ее эффект в каждой из Ваших строк:
IFS=$' \t\n'; xifs "$IFS"; echo "$data" | while IFS=b read; do echo ...
^ ^
| |
from here --' `- to here :)
Это так же, как с любой программой, выполненной в оболочке. Переменная, которую Вы (ре) определяете в командной строке, влияет на выполнение программы. И только что (так как Вы не экспортируете). Поэтому сделать использование переопределенных IFS
в такой строке необходимо было бы спросить read
присваивать значения больше чем одной переменной. Взгляните эти примеры:
$ data="a b c"
$ echo "$data" | while read A B C; do echo \|$A\|$B\|\|$C\|; done
|a|b||c|
$ echo "$data" | while IFS= read A B C; do echo \|$A\|$B\|\|$C\|; done
|a b c||||
$ echo "$data" | while IFS='a' read A B C; do echo \|$A\|$B\|\|$C\|; done
|| b c|||
$ echo "$data" | while IFS='ab' read A B C; do echo \|$A\|$B\|\|$C\|; done
|| || c|
1, Как я только что узнал от Gilles, могло бы на самом деле быть преимущество установки IFS=''
(пробел) при чтении только одного поля: это избегает усечения пробела в начале строки.
У Вас есть клиент (и, я верю, также сервер), установленный. Но Вы не выполняете сервер на своей машине (это не запускается по умолчанию на Затруднении).
Добавить sshd
к SERVICES
начинание /etc/rc.conf
. См. руководство. Это будет заботиться о запуске сервера SSH во время начальной загрузки. На данный момент, выполненный /etc/rc.d/sshd start
.
Согласно FAQ, можно хотеть настроить /etc/hosts.allow
или /etc/hosts.deny
сначала. Обратите внимание, что эти файлы предлагают основанную на имени хоста защиту, которая не всегда тривиальна для хитрости, но совсем не абсолютный, тем не менее. Сам Ssh обеспечивает хорошую защиту против злоумышленников (как долго, поскольку Вы не включаете пароли или удостоверяетесь, что у каждого пользователя есть высоко-энтропийный пароль), таким образом, я рекомендую предоставить доступ SSH ко всем (sshd: ALL
в /etc/hosts.allow
).
Ваш sshd работает? ps aux | grep sshd
. Это работает на стандартном порте? less /etc/ssh/sshd_config
Необходимо запустить ssh
демон.
/etc/rc.d/sshd start
Местоположение двоичного файла могло бы отличаться, в зависимости от того, как Вы установили его.
rc.d
, нет init.d
... поздравления
– jasonwryan
31.01.2015, 01:12