0

、、、などmongoのプログラミングインタプリタに似たbashスクリプトを作成したいと思います。noderedis-climysql

のようなコマンドを使用できるようにしたいのですがtest、上記の例のように動作します。

thomas@workstation:~$ test
> 

このように動作するコマンドを作成するにはどうすればよいですか?これは何と呼ばれていますか?

コンテンツを取得して変数に変換できるようにしたいと思います。

thomas@workstation:~$ test
> hello world
hello world 
thomas@workstation:~$

コード内の文字列「helloworld」をエコーのように処理できるようにするには、Enterキーを押してから「エントリ」を1つだけ取得します。

これは何と呼ばれていますか?BASHを使用して作成するにはどうすればよいですか?

4

5 に答える 5

2

「読む」があなたが探しているものだと思いますね。

ここにいくつかの例のリンクがあります:http://bash.cyberciti.biz/guide/Getting_User_Input_Via_Keyboard

だからあなたはこのようなことをすることができます:

read -p "Enter your name : " name
echo "Hi, $name. Let us be friends!"
于 2012-12-14T20:47:29.673 に答える
1

申し訳ありませんが、これでは直接回答できませんが、このようなタスクには、Python、Ruby、Perlなどのより完全に機能するプログラミング言語を使用することを検討する価値があるかもしれません。Pythonでは、raw_input()関数を使用できます。

user_command = raw_input('> ')

プロンプトが表示されます。

于 2012-12-14T20:44:58.033 に答える
1

まず、スクリプトに名前を付けないでくださいtest。それはあまりにも多くの混乱を引き起こします。あなたがそれを何と呼んでも、あなたは多くのことをすることができます:

#!/bin/sh
printf '> '
read line
echo "$line"

シェルがそれをサポートしている場合:

#!/bin/sh
read -p '> ' line
echo "$line"

また

#!/bin/sh
printf '> '
sed 1q    # This will print the input.  To store in in a variable: a=$( sed 1q )
于 2012-12-14T20:45:35.837 に答える
0
[spatel@tux ~]$ read a
Hello World!!!!!
[spatel@tux ~]$ echo $a
Hello World!!!!!
于 2012-12-14T20:55:55.197 に答える
0

ここで役立つ可能性のあるキーワードは、REPL主にプログラミング言語またはコーディング環境で使用される(Read-eval-print loop)です。ブラウザコンソールは、の良い例ですREPL

Nodeを使用すると、REPLを使用してインタラクティブなアプリを構築できます。

于 2016-04-08T01:41:09.163 に答える