別の変数として$ 1変数を設定するにはどうすればよいですか?私のような何かを実行したい:
$ ./script london
Some output with John in text
を、スクリプトは次のようにする必要があります:
#!/bin/bash
london="John"
ukraina="Yury"
romania="Ion"
cat /path/to/file | grep $1
別の変数として$ 1変数を設定するにはどうすればよいですか?私のような何かを実行したい:
$ ./script london
Some output with John in text
を、スクリプトは次のようにする必要があります:
#!/bin/bash
london="John"
ukraina="Yury"
romania="Ion"
cat /path/to/file | grep $1
私は、変数名を検索盲目的にはお勧めしません。ユーザーは、期待する3つの変数だけでなく、任意の変数を渡すことができます。
代わりに、連想配列を使用してください。
declare -A names=([london]=John [ukraina]=Yury [romania]=Ion)
grep "${names[$1]}" /path/to/file
やbashのバージョンが連想配列をサポートしていない場合、
case
ルックアップを使用。
case $1 in
london) name=John;;
ukraina) name=Yury;;
romania) name=Ion;;
esac
grep "$name" /path/to/file
#!/bin/bash
london="Jhon"
ukraina="Yury"
romania="Ion"
cat /path/to/file | grep ${!1}
あなたはこの変数の使用など$ 1宣言したい場合:たとえば
VARIABLE="$1"
:
#!/bin/bash
VARIABLE="$1"
echo $VARIABLE