Командная строка
Здравствуйте. Помогите написать в node.js что-то типа командной строки) с чего начать?
|
Начни с такого вот кода.
var readLine = require("readline").createInterface({input: prosess.stdin}) readLine.on("line", function(line){console.log(myEval(line))}) где myEval -- твоя функция, обрабатывающая входящие строки. |
м, спасибо. А можно поподробнее пожалуйста)
|
Цитата:
|
Побольше помочь с кодом, если можно)
|
Николай777CR,
Я не понял что вам нужно. Просто напишите свою реализацию функции myEval, и код будет работать. |
Николай777CR,
Откуда я знаю, что Вам нужно? Вам Shell написать, bash или cmd? Я правильно понял, что Вы ведь замахнулись на реализацию языка программирования, практически, своего интерпретатора. И что Вам подсказать? Синтаксис Вашего языка? Семантику? По моему, Вы недооцениваете сложность задачи. Однако же, любой интерпретатор имеет Repl (read-eval-print-loop), это основа, как-бы. Вот реализацию Repl'a я Вам показал. Вырожденный случай -- метациклический интерпретатор, безо всяких расширений, если вы вставите вместо myEval нативный eval, вы будете интерпретировать входные строки так же, как это делает низлежащий язык, в данном случае, JS |
Может быть вот так:
var readline = require('readline'); var rl = readline.createInterface({ input: process.stdin, output: process.stdout }); rl.question("Введите своё имя: ", function(answer) { console.log("Спасибо,", answer); rl.close(); }); Код рабочий, только что проверил. |
Нет) Нужно просто что-то типа командной строки
|
Цитата:
|
А вам спасибо)
|
А как добавить какие-нибудь функции? Меню что-ли
|
Ну какое меню в командной строке?
Могут быть флаги. Парсите ответ регулярками, что бы получить значения флагов. Вообще не понятно, что вам нужно. Просто напишите более детально и подробно, что вы имеете ввиду, тогда возможно вам и помогут. |
Как сделать,чтобы прога завершалась только тогда, когда юзер наберет команду exit?
|
var readLine = require("readline").createInterface({input: prosess.stdin}) readLine.on("line", function(line){ if(line === "exit") throw "exit" console.log("you have printed " + line) }) |
Это нужно в начало проги?
|
Это вся прога, какое нахрен начало.
|
Часовой пояс GMT +3, время: 14:11. |