レス
前レス
元トピ
次レスタイトル
Re: echo * の実行結果について
フォーラム
最強WEB問題集LinuC/LPIC Lv1 101
投稿ユーザ(投稿日)
(2013/7/6)本文
※スマホからだと表示が変になったので編集しなおしました
※さらに間違っていたので内容修正しました。
'*'ではなく、*と入力してるんですよね?
「echoコマンドに渡す引数として[d]任意の[/d]文字列である[d]ワイルドカード[/d]アスタリスク('*')」を指定したのか、シェルに「カレントディレクトリで選択可能な全て=ワイルドカード(*)」と渡したのかの違いです。
例えばですが
[code]
$ ls
a.txt b.txt c.txt
d.txt e.txt f.txt
1.log 2.log 3.log
[/code]
な状況で
[code]
find . -name '*.txt'
→ find コマンドに 「*.txt」という名前のファイルを探すよう指示
→→ findコマンドが「*」を解釈して、検索結果として「a.txt, b.txt, c.txt, d.txt, e.txt, f.txt」を返す
[/code]
と
[code]
find . -name *.txt
→ シェルが「*」を展開して
find . -name a.txt b.txt c.txt d.txt e.txt f.txt
というコマンドを実行しようとする
→→ find コマンドに 「a.txt, b.txt, c.txt, d.txt, e.txt, f.txt」という名前のファイルを探すよう指示
[/code]
は明確に異なります。
その*が誰(シェル?実行対象コマンド?)に対して渡されるのか、がポイントですね
レス一覧
前レス
元トピ
次レス
Copyright (c) 2010
Ping-t All rights reserved.