При создании использования логического раздела окна Ничего себе, тот раздел имеет некоторый идентификатор типа раздела Microsoft и таким образом, это недоступно к Linux.
Удалите тот раздел с помощью Windows и отпуска то неразделенное пространство. Ваш установщик Redhat позволит делить его для удовлетворения потребностям Linux.
Можно сказать GNU sed читать сценарий из стандартного входа с -f -
, -f
значение прочитать сценарий из файла, и -
значение стандартного входа, как распространено с большим количеством команд.
sed -f - "$IN" > "$OUT" << SED_SCRIPT
s/a/1/g
s/test/full/g
SED_SCRIPT
POSIX sed также поддерживает -f
, но использование -
поскольку стандартный вход не документируется. В этом случае Вы могли использовать /dev/stdin
в системах Linux (и я, кажется, вспоминаю, Солярис имеет это также, но я не могу подтвердить это прямо сейчас),
Используя <<-SED_SCRIPT
(с '-' префикс), позволит закрытие SED_SCRIPT
тег, который будет расположен с отступом.
Я полагаю, что ввод «q», независимо от того, в конце или нет, вернет вас на консоль. Разве это не так на вашей машине?
Изменить: по крайней мере, меньше и journalctl ведут себя так для меня на fedora 20.
-121--244684-Я подготовил учебное пособие по компиляции Couchbase версии 3.0.1 для тех, кто получает ту же проблему http://kokizzu.blogspot.com/2014/11/how-to-install-couchbase-on-archlinux.html
-121--217668-Может быть, лучше подход:
OUT=/dev/stdout
IN=my_in_file.txt
sed -s 's/in/out/' < $IN > $OUT
-or-
sed -s 's/in/out/' > $OUT < $IN
IN=my_in_text
sed -s 's/in/out/' <<< $IN > $OUT
-or-
sed -s 's/in/out/' > $OUT <<< $IN
:)
В случае, если sed
не поддерживает чтение скрипта из stdin
(используя -f -
), можно использовать замену процесса (доступно в bash
, zsh
, ksh93
):
sed "$IN" > "$OUT" -f <( cat << SED_SCRIPT
s/a/1/g
s/test/full/g
SED_SCRIPT)
Закрывающаяся скобка )
должна следовать за конечным разделителем (SEC_SCRIPT
) сразу или после новой строки. В случае замены процесса вы можете также использовать echo
вместо этого документа:
sed "$IN" > "$OUT" -f <( echo \
" s/a/1/g
s/test/full/g" )
Почему бы не использовать несколько выражений с -e
вот так:
#!/bin/bash
OUT=/tmp/outfile.txt
IN=/my_in_file.txt
sed
-e "s/a/1/g" \
-e "s/test/full/g" \
$IN > $OUT
Я считаю, что это более читабельно для небольших встроенных сценариев sed. Кстати, вы также можете использовать редактирование места -sed:
sed -i.org
-e "s/a/1/g" \
-e "s/test/full/g" \
$IN
Это позволит сохранить исходный файл в папке ${IN}.org
и применить изменения к входному файлу.
-f -
вsed
но это требует замены процесса:<( command )
. – pabouk 27.11.2014, 04:09