違いは何ですか?これらのディストリビューションは異なる方法で処理されますか?それとも構成が違いますか?何を比較して調整する必要がありますか?find *
ワイルドカード自体を一致させたくありません。
*
1つのホストも一致するため、結果は異なります。レッドハットホスティング、Debian ホスティング*
検索もしてみてください。ところで名前はありません*
。- プラットフォーム:Debian Wheezy 7、Red Hat Enterprise Linux 7。常にBashを使用してください。
grep
になければなりません/etc
。/etc/hostname
ホストごとに1つの一致しか存在できません。Debian ホスティングcat /etc/sysconfig/network
待つレッドハットホスティング。
DebianHost# cat $(search /etc/ *) 2>/dev/null | grep $(ホスト名) 検索: '*':対応するファイルまたはディレクトリがありません。 Debian ホスティング Debianホスト# Debianホスト# Debianホスト# DebianHost# ホスト名 Debian ホスティング Debianホスト# Debianホスト# Debianホスト# Debianホスト#pwd /根 Debianホスト# Debianホスト# Debianホスト# Debianホスト#ls -1。 Debianホスト# Debianホスト# Debianホスト# DebianHost# grep -r $(ホスト名) /etc /etc/ホスト名:DebianHost Debianホスト# Debianホスト# Debianホスト# DebianHost# /etc/ * grep -e “*”を探す 検索: '*':対応するファイルまたはディレクトリがありません。 Debianホスト#
RedHatHost#cat $(search /etc/ *)2> / dev / null | grep $(ホスト名) ホスト名=RedHatHost レッドハットホスティング# レッドハットホスティング# レッドハットホスティング# RedHatHost# ホスト名 レッドハットホスティング レッドハットホスティング# レッドハットホスティング# レッドハットホスティング# RedHatHost#pwd /根 レッドハットホスティング# レッドハットホスティング# レッドハットホスティング# RedHatHost# ls -1 。 アナコンダ-ks.cfg インストールログ インストール.ログ.syslog レッドハットホスティング# レッドハットホスティング# レッドハットホスティング# RedHatHost# grep -r $(ホスト名) /etc/ /etc/sysconfig/network:HOSTNAME=RedHatHost レッドハットホスティング# レッドハットホスティング# レッドハットホスティング# レッドハットホスティング# RedHatHost# /etc/ * grep -e “*” 検索 レッドハットホスティング#
ベストアンサー1
どちらの場合も、*
シェルによって拡張されます。おそらく、シェルがワイルドカードを拡張せずにそのままプログラムに渡すWindowsから来たのでしょう。これはUnixシェルが機能する方法ではありません。
これを確認する最善の方法は、両方のコンピュータecho *
で話すことです。 Debian コンピュータは*
ファイルがないディレクトリで実行しているので、印刷されるので*
プログラムに渡されます。 (私はあなたがワイルドカードが何も一致しないときに呼び出されたプログラムにワイルドカードを渡すBashを実行していると仮定します。)Red Hatシステムは次のように言います。
anaconda-ks.cfg install.log install.log.syslog
つまり、実行中のディレクトリ内の3つのファイル名が、引数を区切るスペースecho
とともに印刷に渡されます。
find /etc/ *
実際には合理的な命令ではないので、これによって何を達成したいのか分かりませんfind
。/etc
ツリー内のすべてのファイルをリストしたい場合はfind /etc
それで十分です。