2011-02-09 3 views
0

У меня есть исполняемый файл, который мне нужен для ввода данных из WAV-файла на моем рабочем столе. Исполняемый файл ожидает ввода на stdin.Получение ввода исполняемого файла через stdin?

Давайте использовать пример:

/Users/tomcruise/Desktop/executable 

/Users/tomcruise/Desktop/music.wav 

Я использую Mac OS X.

+1

Это не совсем программирования вопрос, и вы уже были приведены два примера того, как сделать это в ответ на ваш предыдущий вопрос: [Передача URL в конкретный фрагмент кода примера, который извлекает образцы из файла WAV.] (http://stackoverflow.com/questions/4946916/passing-a-url-to-a-specific-piece-of-example-code-which- extracts-samples-from-aw) –

+0

@ Paul R. Я просто подумал, что было бы лучше указать эту деталь в новом вопросе, тем более, что последний был больше об этом конкретном фрагменте кода. Никто, кто искал вышеупомянутый ответ, не нашел бы его в предыдущем потоке. Точно так же я мог бы быть немного более терпеливым, чтобы получить ответ от исходного запроса. Мои извинения. Каков протокол для правильной реакции на отрицательное голосование? Другими словами, что мне теперь делать с этим пороком в моей репутации? :) –

+1

@ Эрик: (а) это не вопрос программирования (принадлежит http://superuser.com) и (б) у вас уже была вся необходимая информация из предыдущего вопроса (см. Комментарии ниже ответов, которые вы получили). –

ответ

1

Открыть терминал и выполните следующие действия:

$ cd /Users/tomcruise/Desktop 
$ ./executable < music.wav 
+0

Исправьте меня, если я ошибаюсь, но не должно быть ./executable. Я думаю, вы пропустили на ./ –

+1

Спасибо, да, это зависит от вашего 'PATH', что было бы лучше в общем случае - я обновил ответ сейчас. –

0

Если ваш исполняемый файл принимает из аргументов командной строки, было бы:

/Users/tomcruise/Desktop/executable /Users/tomcruise/Desktop/music.wav

Если брать от stdin, это будет:

/Users/tomcruise/Desktop/executable < /Users/tomcruise/Desktop/music.wav

0

Вы пишете аргумент только после того, как имя файла:

cd /Users/tomcruise/Desktop 
./executable music.wav 
+0

Его исполнитель принимает входные данные от stdin –

1

Что именно ваш вопрос? stdin - это не то же самое, что аргументы командной строки. Последний является файловым дескриптором, доступным программе при запуске. Последние представляют собой набор строк, доступных в виде строк. Запуск

/Users/tomcruise/Desktop/executable /Users/tomcruise/Desktop/music.wav 

будет «давать» в music.wav имя файла исполняемого файла, который вы можете обработать.

+0

Его исполнитель принимает входные данные от stdin –

Смежные вопросы