Если Вы плохо знакомы с подобной UNIX ОС, то необходимо рассмотреть решение для виртуализации, как David Mackintosh предполагает. Почему? Ну, можно использовать это для изучения пользы и плохого об ОС. Можно сделать ошибки и повреждать VM так часто, как Вы хотите, не влияя на машину Windows хоста; этот тип практики важен, поскольку это дает Вам практический опыт, в котором Вы нуждались бы для использования ОС для реальной работы. Для первого образовательного примера установите основную ОС в VM затем в корневом каталоге, может работать, рекурсивная сила удалите:
CD /
комната sudo - франк /
Почему делают это? Когда Вы сделали это однажды, и Вы видите, какой эффект это имеет, Вы поймете, почему Вы никогда не хотели бы делать это снова. Конечно, это - просто простой, но иллюстративный пример. Будьте готовы удалить VM и переустановить после этого.
Который ОС? Для системы GNU/Linux я обычно рекомендую Debian, потому что это стабильно, и установщик прост для использования. При использовании Fedora Вы могли бы выбрать это для его знакомства. Эти системы имеют многих пользователей настолько находящая справка, когда у Вас есть проблема, будет легко.
Что дальше? Разработайте то, что Вы хотите изучить или испытать. Командная строка является хорошей начальной точкой, для понимания основ того, что они предлагают и где найти различные части ОС. Установка графического интерфейса не важна, но означает, что Вы уже будете знакомы с моделью взаимодействия. Не волнуйтесь о производительности на данном этапе, Вы все еще учитесь, и это должно иметь приоритет. Вот некоторые предложения для тем, чтобы исследовать и осуществить на Вашей новой ОС.
Команда sed a\
интерпретирует Escape, таким образом, необходимо копировать обратные косые черты в строке, Вы интерполируете. Попробуйте это:
sed -e "5a\\
$(echo -E "$text" | sed -e 's/\\/\\\\/g')"
Заключение в кавычки хитро. Я рекомендую использовать инструмент, который не требует, чтобы Вы добавили дополнительные кавычки, такие как awk или жемчуг. Эти два инструмента позволяют Вам передавать параметры командной строке или через среду и использовать их в текстовых манипуляциях. С Perl:
export text
perl -i -pe '$_ .= "$ENV{text}\n" if $. == 5' "$filename"
С awk необходимо сделать файл, перемещающийся вручную:
tmp=$(TMPDIR=$(dirname -- "$filename") mktemp)
awk -v text="$text" '{print} NR==5 {print text}' <"$filename" >"$tmp" &&
mv -- "$tmp" "$filename"
Можно обычно применять выход с printf "%q"
, попробуйте это:
text='\epsilon'
echo -e "$text"
silon
с %q
:
text=$(printf "%q" '\epsilon')
echo -e "$text"
\epsilon
Поскольку я не sed ведущее устройство, я нахожу легче объяснить с эхом.
Используйте одинарные кавычки вместо двойных кавычек.
example1:
echo "one\\two"
one\two
example2:
echo 'one\two'
one\two
Так, при помощи example2 пути Вы ни из чего не должны выходить. Строка в одинарных кавычках 's\t\r\i\n\g' интерпретируется как есть (\, символ не работает символом ESC),
источник: один
$
также. Сколько другие специальные символы, которые требуют выхода, возможны для строки удара? – pmr 10.08.2012, 15:04a='AA'
иb='this is $a'
, затемecho $b
просто распечатаетthis is $a
. После того как Вы делаетеecho
произведите корректную строку, только необходимо волноваться оsed
, иsed
только интерпретирует обратные косые черты, который заботится о с внутреннимsed
.Это все. – angus 10.08.2012, 16:03