レス
元トピ
次レスタイトル
Re: echo * の実行結果について
フォーラム
最強WEB問題集LinuC/LPIC Lv1 101
投稿ユーザ(投稿日)
(2013/7/6)本文
modukuさん
> なぜ、文字列のワイルドカードに過ぎない「*」が、カレントディレクトリの一覧に化けるのでしょうか?
メタキャラクタというのは、シェルによって文字列(ファイル又はディレクトリ)の一覧
(*の場合はカレントディレクトリのすべてのファイル・ディレクトリ)に展開されてからコマンドに渡されます。
どんな場合も同じように扱われます。扱いが変わる(化ける)ことはありません。
例えば、カレントディレクトリ(実機環境にて検証)に
[root@mimiken bk_test]# ls -l
合計 0
-rw-r--r--. 1 root root 0 7月 6 16:52 2013 AAAA
-rw-r--r--. 1 root root 0 7月 6 16:52 2013 BBBB
-rw-r--r--. 1 root root 0 7月 6 16:52 2013 CCCC
3つのファイルがあった場合を考えます。
「*」= AAAA BBBB CCCC
と展開されます。
展開された後に、コマンドに渡されます。
例えば、下に示す2つのlsコマンドは、
「ls AAAA BBBB CCCC」=「ls *」
は同じ扱いになります。
[root@mimiken bk_test]#
[root@mimiken bk_test]# echo *
AAAA BBBB CCCC
[root@mimiken bk_test]#
[root@mimiken bk_test]# ls AAAA BBBB CCCC
AAAA BBBB CCCC
[root@mimiken bk_test]# ls *
AAAA BBBB CCCC
[root@mimiken bk_test]#
レス一覧
元トピ
次レス
Copyright (c) 2010
Ping-t All rights reserved.