4

次のコードは、/opt/hadoop/conf ディレクトリにファイル core-site.xml を作成することを知っています。誰かが私のためにLinuxシェルの用語でそれを分解してもらえますか? 特に << 演算子と CORE_EOF? これらのマーカーはどのように機能しますか? 私はこれを理解していますが、もっと知りたいと思っていました。

cat >/opt/hadoop/conf/core-site.xml <<CORE_EOF
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:8020</value>
  </property>
</configuration>
CORE_EOF
4

2 に答える 2

18

<<演算子を使用したコマンドは、次のことを行います。

  • 演算子の左側で指定されたプログラム、たとえばcatを起動します。
  • 演算子の右側で指定されたものが1行で満たされるまで、改行を含むユーザー入力を取得します。たとえば、EOFです。
  • 左側のプログラムの標準入力に、EOF値を除いて読み取ったすべてのものを送信します。

    cat << EOF
    Hello
    World
    EOF
    

「こんにちは

世界"

猫の標準入力に。

これを行うのと同じです:

cat < file

を含むファイル付き:

Hello
World
于 2012-08-28T22:45:33.753 に答える
0

この状態で猫は同じ名前で新しいファイルを作成するか、古いファイルを書き換えます

文字列をファイルに入れます。

ファイルに文字列を追加する場合は、次のように入力します。

cat >> /opt/hadoop/conf/core-site.xml << EOF

EOF

于 2012-08-29T09:44:37.887 に答える