No.3ベストアンサー
- 回答日時:
> \$$って、どういう意味なんでしょうか?
\$ と $x です。
入力された変数名を展開するのが $x 。それの頭に $ を一つくっつけたいんですが
$$x とやってしまうと、$$ に意味があって、このシェルのプロセス番号を
表してしまいます。
なので、$ をエスケープして \$ 、それに続けて $x です。
> 何度もすいません。
質問サイトなので、質問することに負い目を感じることはありません。
答えたくなくなれば、答えなければ良いだけなので :-)
No.2
- 回答日時:
> 出来ればevalが便利そうに思えるscriptの例を簡単でいいので作成してくれると有難いのですが・・・
実は、さっきの回答を書きながら考えていたのですが、なかなか思いつかなくて (^^;
eval じゃなくてはできない、ということで、ひとつ思いついたのは、シェルの
変数展開などを可変にしたい場合です。
例えば、
read x
echo \$$x
eval echo \$$x
設定済みの環境変数なんかを入力してみてください。
$ sh aaa
HOME ← これは入力です
$HOME
/home/a-kuma ← 私のホームディレクトリ
eval は、使うと便利、というよりも、使わないと出来ない処理がある、ってな感じです。
シェルスクリプトは結構書きますが、めったに eval を使うことはありません。
No.1
- 回答日時:
> . filenameとしたらどうなるのでしょうか?
sh系のシェルの場合、filename で示されるファイルをシェルスクリプトだと思って
読込んで処理をします。
例えば、シェルスクリプトから、共通的に利用できるサブルーチンをこれまた
シェルスクリプトで用意して、それを呼び出すように使えます。
sh filename とやるのとの違いは、sh filename が別プロセスを起動するのに対し、
. filename は、ひとつのプロセスで処理されます。
そのため、そのスクリプトでシェル変数や環境変数を変更した場合、呼出し元に影響を
与えます。
> また、eval filenameとしたらどうなるんでしょうか?
eval は、その後に続く引数をシェルに対する引数だと評価して実行します。
eval filename であれば、filename で示されるファイルが実行可能であれば、
ただそれを実行するだけです。
# これだけじゃ、何のことかわからないかな?
この回答への補足
どうもすみません。こちらの説明が不十分だったみたいで・・・出来ればevalが便利そうに思えるscriptの例を簡単でいいので作成してくれると有難いのですが・・・
補足日時:2002/01/09 19:25お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- Visual Basic(VBA) エクセルのマクロについて教えてください 物件ごとのフォルダを作成してます そのフォルダ内にサブフォル 2 2023/07/02 17:58
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/07/01 12:54
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/02 11:48
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Cシェル内でBシェルの様な関数...
-
csh (tcsh)での環境変数の長さ...
-
Thunderbirdで既読にしても、シ...
-
tcshなのにスクリプト構文中のs...
-
ターミナルが全く入力できない
-
Kシェルに関して。
-
BシェルとBashの違い
-
[UNIXコマンド] eval教えて下...
-
export と set は違うの?
-
『存在するかどうか分からない...
-
Linuxのファイル禁止文字
-
バックスラッシュの意味がわか...
-
シェル 会話形式でエンターキ...
-
シェル(ksh)で変数にある文字列...
-
シェルスクリプトのbashとperl...
-
シェルスクリプトの中であるプ...
-
シンボリックリンクでリンク先...
-
msys(cygwin)で、シェルスクリ...
-
シェルスクリプトで #!/bin/sh ...
-
Dirコマンドでフォルダ内ファイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
export と set は違うの?
-
シェル 会話形式でエンターキ...
-
Cシェル内でBシェルの様な関数...
-
シェルスクリプトで #!/bin/sh ...
-
ubuntuの端末の左にカレントデ...
-
Linuxのファイル禁止文字
-
Cシェルでのファイルからの入...
-
mac os x10.6.4のターミナルでp...
-
バックスラッシュの意味がわか...
-
.cshrc ファイルについて
-
ターミナルが全く入力できない
-
『存在するかどうか分からない...
-
posixでshellを起動したとき`da...
-
シェルの変数をMySQLに送る方法...
-
シェルとシェルの間で環境変数...
-
lsコマンド部分一致方法
-
シェルスクリプトに関する問題...
-
シェルスクリプトのbashとperl...
-
UNIX(hp-ux)のコマンド履歴↑↓
-
Thunderbirdで既読にしても、シ...
おすすめ情報