LINUX.ORG.RU

Замена строки во множестве файлов.


0

1

есть список файлов ( это питоновские файлы )

нужно заменить все вхождения #!/usr/bin/python на #!/opt/python27/django/1.2/bin/python

переношу на сервер новый там у хостера нет xargs (((

есть только awk и sed, писать код лениво , может есть решение в 1 строчку.

sed -i 's@#!/usr/bin/python@#!/opt/python27/django/1.2/bin/python@g' file1 fie2 file3 `cat list_of_files` ...

YAR ★★★★★
()

> есть список файлов

Так все же - есть готовый список или есть просто набор файлов, которые еще надо найти? Если список готовый - то строчка выше, если нет - то либо вместо списка там подставляется wildcard, либо
find <условия> -exec <строчка выше> {} \; (find там есть?)

YAR ★★★★★
()

cd список файлов

sed -i -e «s|#![ ]*/usr/bin/python$|#!/opt/python27/django/1.2/bin/python|» *

GreyDoom ★★★★
()

a в /usr/bin/ нельзя сделать линк на /opt/python27/django/1.2/bin/python ?

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.