Только, чтобы быть уверенным я начал бы проверять основы:
Можете Вы telnet, который nfs порта использует на сервере? Если не затем, возможно, проблема брандмауэра или неверная конфигурация nfs. Для наблюдения информации о порте, можно использовать команду (в nfsserver):
rpcinfo -p
Если теми вещами является прямо тогда попытка (от клиента nfs):
showmount -e *.28
Необходимо видеть, что/myfolder, экспортируемый в любую сеть *. Если не затем существует проблема с конфигурацией сервера nfs.
PD: Я думаю, что необходимо добавить опцию _netdev к fstab строке, таким образом, она не пытается сделать монтирование, пока сеть не готова. Так или иначе, если ручное монтирование перестало работать, это не проблема.
Ed является стандартным редактором, потому что вы можете использовать его для разработки скриптов редактирования и позволить ему делать свою работу, как вы тестировали ранее, интерактивно. Для небольших файлов вроде .bashrc
или любого текста кода, редактор Ed выполняет свою работу, потому что читает весь файл в одну спешку и работает с буфером. По этой же причине не стоит использовать ed для больших файлов, таких как лог-файлы.
Но со скриптом ed ваша работа выполняется в кратчайшие сроки:
ed ~/.bashrc<<EOF
/^# aliases
+,/^# end aliases/-1d
-r !sed -n '/^# aliases/,/^# end aliases/p' stuff-to-place-in-bashrc.txt|grep -v '^#'
w
q
EOF
Я использую подобные скрипты для автоматической настройки конфигурационных файлов, таких как als .asoundrc для различных сред, в которые я беру свой ноутбук.
Лучший документ об ed поставляется в виде простой ручной страницы из очень крутой системы PLAN9. Я перевел его на ed.ps постскриптумный документ. Если вас интересует PLAN9, вам следует проверить 9front и http://cat-v.org/, так как оригинальная версия bell labs все еще поддерживается, но имеет очень простую файловую систему.
Последнее слово о editor wars, emacs, vim и тому подобное: правила acme!
Следующее близко к этому. И странно.
: if; { code; } && {
code
}
Лично мне никогда не нравилось...
if true; then
more;fi
... сформировать себя. Мне нравится, когда управляющие слова ведут . Мне всегда казалось странным, что превалирующая ..., тогда
форма вообще возникла.
if this && that
then do these things too
else i will probably get upset
fi
Это почти полностью противоположно вашему запросу, но это другой способ сделать это. При необходимости можно также привязать все желаемые перенаправления к строке fi
, и они будут применяться ко всему блоку.
Чтобы сделать это полностью в оболочке:
while IFS="|" read -r im st se nu co ac
do
printf '{ "%s":"%s", "%s":"%s", "%s":"%s", "%s":"%s", "%s":"%s", "%s":"%s" }\n' \
IMSI "$im" \
Status "$st" \
ServiceType "$se" \
Number "$nu" \
ConnectionType "$co" \
ActivationData "$ac"
done < input > output
-121--254323- set /^\#aliases/ /^\#end\ aliases/
sed -ne"$1,$2"'s/\\\{0,1\}/&&/gp' <stuff_to_place...rc |
sed -e"$1,$2c\" -f- ./infile >./outfile
Если вы хотите изменить файл на месте ed
является очень хорошим решением. Если вы хотите редактировать его в потоке, используйте sed
. Избегайте sed -i
.
Конечно, вы можете сделать это с помощью ed
, без дополнительных инструментов:
ed -s stuff_to_place.txt<<\IN
1,/# aliases/d
/# end aliases/,$d
,d
.r /home/username/.bashrc
/# aliases/x
.t.
.,/# end aliases/-d
,p
q
IN
если вы ' Если результат вас устраивает, замените , p
на w /home/username/.bashrc
, чтобы записать изменения в ~ / .bashrc
(обратите внимание на полный путь используется с r
и w
; вы можете просто использовать .bashrc
, если он находится в cwd
).
Как это работает: сначала мы d
удаляем ненужные строки из stuff_to_place.txt
. Затем мы удаляем оставшиеся (псевдонимы) с помощью , d
. Текстовый буфер теперь пуст, а вырезанный буфер содержит нужные нам строки. Затем мы r
вставляем содержимое .bashrc
в текстовый буфер, помещаем содержимое вырезанного буфера ( x
) после / # aliases /
, продублируйте последнюю вставленную строку ( .t.
), затем удалите из дублированной строки до, но не включая / # end aliases /
и, наконец, p
rint или w
обряд изменения и q
uit.