No.2ベストアンサー
- 回答日時:
#1です。
なるほど。linuxにはevalが無いと思ったんですね。evalはシェルの組み込みコマンドなので、man sh か man bash です。
linuxとFreeBSDでお書きのものを実行して見ました。
・FreeBSDのsh →OK (log_1等の中身がセットされる)
・FreeBSDのbash → NG (log_1等の名前がセットされる)
・linuxのbash → NG (同上)
・linuxのsh → NG (同上)
OSの違いではなく、shとbashのシェルの違いですね。linuxではshは実はbashなので(ls -l `which sh` `which bash` でわかります)、同じ結果ですが。
` ` の中でevalを使うなら、$をクォートすることが必要です。
input_log=`eval echo '$'"$input_log"` または
input_log=`eval echo \\$"$input_log"`
でshでもbashでも上手く行きました。ただ、#1に書いた方法のようにevalは直接使うのが普通だと思います。
No.1
- 回答日時:
evalを使わないやり方の前に、まずこれ動かなくないですか?$log_1,$log_2,$log_3の値を順に参照するという配列相当のことをしたいんですよね?
eval input_log=\$log_$i
では?
evalを使用しないという制約の理由がわかりませんが、
echo echo \$log_$i > tmp.sh
input_log=`sh tmp.sh`
でしょうか。
スクリプトの意図が違う場合は補足ください。
この回答への補足
回答ありがとうございます。
>配列相当のことをしたいんですよね?
はい、そうです。
>eval input_log=\$log_$i
>では?
こちらの方がシンプルですね。試してみます。
>evalを使用しないという制約の理由がわかりませんが、
これはUNIX環境では、動作したのですが、RedHat環境では動きませんでした。(マニュアルでman evalで出てきませんでした。)
>echo echo \$log_$i > tmp.sh
>input_log=`sh tmp.sh`
>でしょうか。
こちらも試してみたいと思いますが、
tmp.shを作成しない方法はないでしょうか?
以上よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アプリケーションログについて
-
Aixのsyslogログローテーション...
-
/etc/cron.daily/logrotateがエ...
-
syslogからログが出力されなく...
-
ssl_request_logの必要性について
-
suコマンドのログ
-
複数パターン文字列指定でログ...
-
RedHat8.0にsamba
-
expectを用いた正規表現[]のgre...
-
イベントログ 「シェルが停止し...
-
IEのイベントログをイベントビ...
-
dhcp.dが起動しない
-
/var/log/maillogへのログの書...
-
パスワード設定していないユー...
-
同一のホスト名で何か問題があ...
-
同じ独自ドメインを2つのサーバ...
-
”Tortoise SVN” と ”Subversio...
-
DNSサーバを設定したのですがns...
-
「DNSサーバーを自動的に取得す...
-
VirtualBoxのGuestマシンのネッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ssl_request_logの必要性について
-
IEのイベントログをイベントビ...
-
squidのアクセスログについて
-
auth.logが出力されない。
-
SolarisからSyslogを転送する設...
-
apcupsdについて教えてください
-
/etc/cron.daily/logrotateがエ...
-
logrotateの再起動
-
expectを用いた正規表現[]のgre...
-
vsftpを設定し試したら書き込み...
-
コマンドプロンプトでのcopyコ...
-
bindにてlogがfailedになる
-
PowerShell と Get-WinEvent
-
ssl_error_logについて
-
Linux の時刻が勝手に変わる
-
loggerでmessagesに書き出す方法
-
suコマンドのログ
-
syslogからログが出力されなく...
-
squidのフリーズ?についてです!
-
rsyncの実行時間
おすすめ情報