Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
Помогите сделать простенький скрипт на перле (шелле)
Новая тема
Ответить
цитата
08/01/15 в 14:07
FreeMann
привет всем, помогите написать скриптик на вход которого поступает текстовый файл с содержимым
1
2
32
48
59
и т.д. (цифры разные)
на выходе получаю
1
2
32
48
59
т.е. с пробелами перед и после цифры.
Заранее спасибо.
цитата
08/01/15 в 14:24
Дартаньян
FreeMann:
, sort -n 1.txt > 1.sort ? если нет стучи в скайп накидаю тебе на питоне.
цитата
08/01/15 в 16:34
FreeMann
спасибо,
Дартаньян:
, но не работает. на питоне - не нужно, кто знает перл это должно быть просто сделать, сам к сожалению не силен
Еще раз: на входе скрипту нужно скормить файл с цифрами без пробелов, на выходе требуется получить те же цифры с одним пробелом перед ними и одним пробелом после.
Не обязательно на перле, на любом языке работающим с текстом, sed, awk, пофиг на чем. к питону даже не знаю с какой стороны подойти - поэтому наверно не надо.
цитата
08/01/15 в 16:51
Дартаньян
FreeMann:
,
python script.py 1.txt > 2.txt
# -*- coding: utf-8 -*-
#!/usr/bin/env python
import sys
for line in open(sys.argv[1]):
print ' ' + line.strip + ' '
цитата
08/01/15 в 17:01
Mika
можно так
sed 's/.*/ & /' input.txt > output.txt
цитата
08/01/15 в 17:06
FreeMann
Дартаньян:
python pr.py 1.txt > 2.txt
вот что получаю:
Traceback (most recent call last):
File "pr.py", line 6, in <module>
print ' ' + line.strip + ' '
TypeError: cannot concatenate 'str' and 'builtin_function_or_method' objects
цитата
08/01/15 в 17:08
FreeMann
Mika:
супер, работает, спасибо
цитата
08/01/15 в 17:17
Mika
Дартаньян писал:
FreeMann:
,
python script.py 1.txt > 2.txt
# -*- coding: utf-8 -*-
#!/usr/bin/env python
import sys
for line in open(sys.argv[1]):
print ' ' + line.strip + ' '
ты забыл скобочки добавить после line.strip
цитата
08/01/15 в 17:23
Дартаньян
Mika:
ах точно, ну и фиг сним.
цитата
08/01/15 в 17:38
FreeMann
да, вот так работает отлично
#!/usr/bin/env python
import sys
for line in open(sys.argv[1]):
print ' ' + line.strip() + ' '
Всем спасибо
Новая тема
Ответить
Эта страница в полной версии