Потребителски вход

Запомни ме | Регистрация
Моят блог в Blog.bg
Автор: topper Категория: Технологии
Прочетен: 23514 Постинги: 9 Коментари: 4
Постинги в блога от Май, 2008 г.
Преди 7 години видях Линукс.
Бях потресен :) Първата ми реакция на конзолата и непонятните 2-3 буквени команди ми бе
"Абе ние в ДОС ли ще се върнем?"
Реакция на лаик ;)
Сега не спирам да се учудвам на хитрините, които могат да се правят лесно и интуитивно.
Спестяват много нерви и време. Днес ми излезе един проблем - да заменя една функция с друга в няколко сорса. Е под Уиндоус си е китайска работа. Обърнах се към конзолата на SLES. Малко се замислих, написах цикъл, хванах файловете които ми трябват и взех да разсъжавам как с grep да го направя, като осъзнавах, че няма да стане. Чичо Гугъл ми помогна - на първа страница още в търсачката имаше "ежедневни трикове със sed". Ами да, знам Станиславе, че все ми казваш "awk и sed са голямата работа" ама от работа все не остава време да се почете. Ето, че сега ми се наложи и хватката стане еУегантно:
#!/bin/sh
# подмяна на стринг $1 със $2 във всички файлове
# употреба: replace "ненужен стринг" "нов стринг" file [file...]
OLD=$1 # първи параметър
NEW=$2 # втори параметър
shift ; shift # отпадат двата параметъра, за да остане 3-я - файловете
for file in $* # трика е това - всички файлове
do
# подмяна на стригн OLD с NEW и изход в нов файл
sed "s/$OLD/$NEW/g" ${file} > ${file}.new
# преименуване (с преместване, което го няма в Уин) на новия файл като първоизточника
/bin/mv ${file}.new ${file}
done

Ами, done :)
Категория: Технологии
Прочетен: 1059 Коментари: 2 Гласове: 0
Търсене

За този блог
Автор: topper
Категория: Технологии
Прочетен: 23514
Постинги: 9
Коментари: 4
Гласове: 24
Архив
Календар
«  Май, 2008  >>
ПВСЧПСН
1234
567891011
12131415161718
19202122232425
262728293031