The UNIX and Linux Forums  
Здравствуйте и добро от Соединенных Штатов UNIX и Linux Форумы! Благодарим Вас за посещение и вступления нашей мирового сообщества.

Go Back   В UNIX и Linux Форумы > Топ форумы > UNIX для чайников Вопросы И Ответы
.
Google unix.com



UNIX для чайников Вопросы И Ответы Если вы не уверены в том, где разместить UNIX или Linux вопрос, задайте его здесь. Все UNIX и Linux приветствуем новичков!!

Подробнее UNIX и Linux Темы форума можно найти полезные
Нить Резьба для начинающих Форум Ответы Последнее сообщение
Сплит-файлов с помощью Csplit savitha UNIX для чайников Вопросы И Ответы 7 12-01-2007 11:55 AM
Разделить файл на 2 файлов dummy_needhelp Shell программирование и сценарии 7 11-04-2007 07:36 PM
Общее количество файлов, которые "ААА" в файлы, чьи имена файлов _bbb * * sudheshnaiyer UNIX для чайников Вопросы И Ответы 1 08-16-2007 03:34 PM
Разделить файл на 2 или более файлов Бобо UNIX для чайников Вопросы И Ответы 4 01-16-2006 05:15 PM
AWK команду разделить на 2 файлов m_subra_mani Shell программирование и сценарии 3 12-13-2005 05:13 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered By Powered by Google
 
LinkBack Резьба Инструменты Искать в этом Thread Оценить Thread Режимы дисплея
Old 05-13-2008
Migrainegirl Migrainegirl is offline
Зарегистрированный пользователь
  
 

Регистрация: Май 2008
Сообщений: 3
разбить на файлы заданного количества выходных файлов

Привет всем,

У меня есть большие текстовые файлы, которые нужно разделить на определенное количество файлов равного размера. Насколько я знаю (и я не знаю, что многое ) Разделенной команды только позволяет указать число строк или байт. Эти файлы являются все разных размеров, так что количество строк отличаются, как хорошо.
Я использую следующий код, чтобы узнать, сколько строк каждый выходной файл должен быть (1 / 50 от первоначального документа):

Y \u003d `акв | AWK '($ печати x/50)' | AWK-F. '(если ($ 2> \u003d 1) ($ печати 1 +1) (печатать еще $ 1))' `
Эхо $ Y

Проблема заключается в том, что я не могу использовать эту переменную $ Y в качестве вклада в разделить команду так:

сплит $ X-D-L $ Y сплит / $ X

Он просто не работает. Кто-нибудь знает способ передать значение из переменной $ Y раскол в команде? Или же кто есть лучший способ решить все проблемы?

Спасибо заранее!
Old 05-13-2008
эпоха era is offline Forum Advisor  
Гердер бесполезных Кошки (В субботний)
  
 

Регистрация: Mar 2008
Местоположение: / там / это / только / BIN / ш
Сообщений: 3652
Это не совсем понятно, почему вы не можете использовать переменную. Как это сейчас, я не думаю, что он содержит полезную ценность (что делает эхо Версия для печати для вас?), но фиксация сценарии так оно работает звучит как самый лучший план, если вы не можете объяснить, почему она "просто не работают".

Если предположить, что $ X является имя файла, который Вы собираетесь разделить, попробуйте что-нибудь, как это вместо.

Код:
y=`wc -l < $x | awk '{ print 1+int($1/50) }'`
Я поставил на добавление одного на теории, что это должен сделать что-то смутно полезно даже с файлами, которые являются слишком маленькими, с небольшим смещением к тому, чтобы сделать последний файл в этой серии меньше, чем другие. (Может быть, разделить на 49 вместо того, чтобы компенсировать?)
Old 05-13-2008
Migrainegirl Migrainegirl is offline
Зарегистрированный пользователь
  
 

Регистрация: Май 2008
Сообщений: 3
В эхо дает мне номер, который он должен делать.
В дополнение используется для кого номера: 231,2 становится 232, а 231.0 остается 231.

Я попробовал еще раз с $ X переменная четко определены, а затем он работал. Так что проблема, как представляется, $ X. (извините, я не получил много спать прошлой ночью ) Это изменяет мой вопрос:
Если я хочу использовать мой сценарий с первоначальным текстом, как входной файл (например: SH test.sh <file.txt), как мне слово в исходном файле внутри скрипта?
Я думал, очевидно, что $ X в "раскол $ X-D-L $ Y сплит / $ X" будет заменено на 'file.txt', но это не так.

Последний раз редактировалось Migrainegirl; на 05-13-2008 08:53 AM..
Old 05-13-2008
эпоха era is offline Forum Advisor  
Гердер бесполезных Кошки (В субботний)
  
 

Регистрация: Mar 2008
Местоположение: / там / это / только / BIN / ш
Сообщений: 3652
В позиционных параметров в $ 1 $ 2 $ 3 и т.д., но если ссылаться на скрипт с перенаправлением, нет позиционных параметров, а не имя файла, просто стандартный ввод.

Код:
vnix$ ./myscript file.txt oops   #  inside myscript, $1 is "file.txt" and $2 is "oops"
vnix$ ./myscript   # inside myscript, no file name is known; input is from standard input (terminal)
vnix$ ./myscript <file.txt   # again, inside myscript, no file name is known; input is redirected to come from file.txt

Последний раз редактировалось эры; на 05-13-2008 09:02 AM.. Основание: Добавить информативные (?) Пример
Old 05-13-2008
Migrainegirl Migrainegirl is offline
Зарегистрированный пользователь
  
 

Регистрация: Май 2008
Сообщений: 3
Спасибо!
Closed Thread

Закладки

Резьба Инструменты Искать в этом Thread
Искать в этом Thread:

Расширенный поиск
Режимы дисплея Оценить эту ветку
Оценить эту ветку:

Отправка Правила
Вы не может Начать новую нитей
Вы не может Почтовые ответы
Вы не может Почтовые вложения
Вы не может Редактировать Ваши сообщения

BB код быть На
Смайлики являемся На
[IMG] код На
HTML-код Вне
Trackbacks являемся На
Pingbacks являемся На
Refbacks являемся На




Часовой пояс GMT -4. Текущее время 07:45 AM.


Powered By: Справка, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Язык Переводы на питание от .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
В UNIX и Linux форумы Содержание Copyright © 1993-2009. Все права Reserved.Ad управления по RedTyger

Содержание соответствующие URL-адреса в vBSEO 3.2.0