Hadoop Shellコマンド
6481 ワード
1.FS Shell ファイルシステム(FS)Shellコマンドを呼び出すにはbin/hadoop fsの形式を使用します. すべてのFS shellコマンドはURIパスをパラメータとして使用します.URI形式はscheme://authority/path. はHDFSファイルシステム、schemeはhdfs、ローカルファイルシステム、schemeはfileである.ここでschemeパラメータとauthorityパラメータはオプションで、指定を付けない場合は、構成で指定したデフォルトのschemeが使用されます. HDFSファイルまたはディレクトリ、例えば FS Shellコマンドのほとんどの動作は、対応するUnix Shellコマンドと同様であり、異なる点は、以下で各コマンドの使用の詳細を説明する際に指摘される.エラー情報はstderrに出力され、他の情報はstdoutに出力されます.
cat
使用方法:
戻り値:0が正常に返され、-1が失敗しました.
chgrp
使用方法:
chmod
使用方法:
chown
使用方法:
copyFromLocal
使用方法:
copyToLocal
使用方法:
cp
使用方法:
例:
戻り値:
0が正常に返され、-1が失敗しました.
du
使用方法:
例:
戻り値:
0が正常に返され、-1が失敗しました.
dus
使用方法:
expunge
使用方法:
get
使用方法:
例:
戻り値:0が正常に返され、-1が失敗しました.
getmerge
使用方法:
ls
使用方法:
ファイル名ファイルサイズ変更日変更時間権限ユーザIDグループID
ディレクトリの場合は、Unixのように直接サブファイルのリストが返されます.ディレクトリが返すリストの情報は次のとおりです.
ディレクトリ名変更日変更時間権限ユーザIDグループID
例:
戻り値:0が正常に返され、-1が失敗しました.
lsr
使用方法:
mkdir
使用方法:
戻り値:0が正常に返され、-1が失敗しました.
movefromLocal
使用方法:
mv
使用方法:
例:
戻り値:0が正常に返され、-1が失敗しました.
put
使用方法:
標準入力から入力を読み込みます.
戻り値:0が正常に返され、-1が失敗しました.
rm
使用方法:
例:
戻り値:0が正常に返され、-1が失敗しました.
rmr
使用方法:
例:
戻り値:0が正常に返され、-1が失敗しました.
setrep
使用方法:
戻り値:
0が正常に返され、-1が失敗しました.
stat
使用方法:
戻り値:
0が正常に返され、-1が失敗しました.
tail
使用方法:
戻り値:
0が正常に返され、-1が失敗しました.
test
使用方法:
-eファイルが存在するかどうかを確認します.存在する場合は0を返します.
-zファイルが0バイトかどうかをチェックします.そうであれば0を返します.
-dパスがディレクトリの場合は1を返し、そうでなければ0を返します.
例:
text
使用方法:hadoop fs-text
ソースファイルをテキスト形式で出力します.許可される形式はzipとTextRecordInputStreamです.
touchz
使用方法:
戻り値:
0が正常に返され、-1が失敗しました.
/parent/child
は、hdfs://namenode:namenodeport/parent/child
またはより簡単な/parent/child
として表すことができます(プロファイルのデフォルト値がnamenode:namenodeportであると仮定します).cat
使用方法:
hadoop fs -cat URI [URI …]
パス指定ファイルの内容をstdoutに出力します.例:
hadoop fs -cat hdfs://host1:port1/file1 hdfs://host2:port2/file2
hadoop fs -cat file:///file3 /user/hadoop/file4
戻り値:0が正常に返され、-1が失敗しました.
chgrp
使用方法:
hadoop fs -chgrp [-R] GROUP URI [URI …]
ファイルが属するグループを変更します.-Rを使用すると、変更はディレクトリ構造の下で再帰的に行われます.コマンドの使用者は、ファイルの所有者またはスーパーユーザーである必要があります.詳細については、HDFSアクセス権ユーザーズガイドを参照してください.chmod
使用方法:
hadoop fs -chmod [-R] URI [URI …]
ファイルの権限を変更します.-Rを使用すると、変更はディレクトリ構造の下で再帰的に行われます.コマンドの使用者は、ファイルの所有者またはスーパーユーザーである必要があります.詳細については、HDFSアクセス権ユーザーズガイドを参照してください.chown
使用方法:
hadoop fs -chown [-R] [OWNER][:[GROUP]] URI [URI ]
ファイルの所有者を変更します.-Rを使用すると、変更はディレクトリ構造の下で再帰的に行われます.コマンドの使用者はスーパーユーザーでなければなりません.詳細については、HDFSアクセス権ユーザーズガイドを参照してください.copyFromLocal
使用方法:
hadoop fs -copyFromLocal URI
ソースパスがローカルファイルであることを制限する以外はputコマンドと似ています.copyToLocal
使用方法:
hadoop fs -copyToLocal [-ignorecrc] [-crc] URI
ターゲットパスがローカルファイルであることを制限する以外は、getコマンドと同様です.cp
使用方法:
hadoop fs -cp URI [URI …]
ファイルをソースパスからターゲットパスにコピーします.このコマンドでは、ターゲットパスがディレクトリである必要がある複数のソースパスを許可します.例:
hadoop fs -cp /user/hadoop/file1 /user/hadoop/file2
hadoop fs -cp /user/hadoop/file1 /user/hadoop/file2 /user/hadoop/dir
戻り値:
0が正常に返され、-1が失敗しました.
du
使用方法:
hadoop fs -du URI [URI …]
ディレクトリ内のすべてのファイルのサイズを表示するか、1つのファイルのみを指定した場合に表示します.例:
hadoop fs -du /user/hadoop/dir1 /user/hadoop/file1 hdfs://host:port/user/hadoop/dir1
戻り値:
0が正常に返され、-1が失敗しました.
dus
使用方法:
hadoop fs -dus
ファイルのサイズを表示します.expunge
使用方法:
hadoop fs -expunge
回収所を空にする.詳細については、HDFS設計ドキュメントを参照してください.get
使用方法:
hadoop fs -get [-ignorecrc] [-crc]
ファイルをローカルファイルシステムにコピーします.-ignorecrcオプションを使用して、CRCチェックアウトに失敗したファイルをコピーできます.-crcオプションを使用して、ファイルおよびCRC情報をコピーします.例:
hadoop fs -get /user/hadoop/file localfile
hadoop fs -get hdfs://host:port/user/hadoop/file localfile
戻り値:0が正常に返され、-1が失敗しました.
getmerge
使用方法:
hadoop fs -getmerge [addnl]
ソースディレクトリとターゲットファイルを入力として受け入れ、ソースディレクトリ内のすべてのファイルをコストターゲットファイルに接続します.addnlはオプションで、各ファイルの最後に改行を追加することを指定します.ls
使用方法:
hadoop fs -ls
ファイルの場合は、次の形式でファイル情報を返します.ファイル名ファイルサイズ変更日変更時間権限ユーザIDグループID
ディレクトリの場合は、Unixのように直接サブファイルのリストが返されます.ディレクトリが返すリストの情報は次のとおりです.
ディレクトリ名変更日変更時間権限ユーザIDグループID
例:
hadoop fs -ls /user/hadoop/file1 /user/hadoop/file2 hdfs://host:port/user/hadoop/dir1 /nonexistentfile
戻り値:0が正常に返され、-1が失敗しました.
lsr
使用方法:
hadoop fs -lsr
lsコマンドの再帰バージョン.Unixのls-Rに似ています.mkdir
使用方法:
hadoop fs -mkdir
パスで指定したuriをパラメータとして受け入れ、これらのディレクトリを作成します.その動作はUnixのmkdir-pに似ており、パス内の各レベルの親ディレクトリが作成されます.例:hadoop fs -mkdir /user/hadoop/dir1 /user/hadoop/dir2
hadoop fs -mkdir hdfs://host1:port1/user/hadoop/dir hdfs://host2:port2/user/hadoop/dir
戻り値:0が正常に返され、-1が失敗しました.
movefromLocal
使用方法:
dfs -moveFromLocal
「not implemented」情報を出力します.mv
使用方法:
hadoop fs -mv URI [URI …]
ファイルをソースパスからターゲットパスに移動します.このコマンドでは、複数のソースパスを許可します.ターゲットパスはディレクトリである必要があります.異なるファイルシステム間でファイルを移動することは許可されません.例:
hadoop fs -mv /user/hadoop/file1 /user/hadoop/file2
hadoop fs -mv hdfs://host:port/file1 hdfs://host:port/file2 hdfs://host:port/file3 hdfs://host:port/dir1
戻り値:0が正常に返され、-1が失敗しました.
put
使用方法:
hadoop fs -put ...
ローカルファイルシステムから1つ以上のソースパスをターゲットファイルシステムにコピーします.標準入力から入力を読み込んでターゲットファイルシステムに書き込むこともサポートされます. hadoop fs -put localfile /user/hadoop/hadoopfile
hadoop fs -put localfile1 localfile2 /user/hadoop/hadoopdir
hadoop fs -put localfile hdfs://host:port/hadoop/hadoopfile
hadoop fs -put - hdfs://host:port/hadoop/hadoopfile
標準入力から入力を読み込みます.
戻り値:0が正常に返され、-1が失敗しました.
rm
使用方法:
hadoop fs -rm URI [URI …]
指定したファイルを削除します.空でないディレクトリとファイルのみを削除します.rmrコマンドを参照して、再帰削除について説明してください.例:
hadoop fs -rm hdfs://host:port/file /user/hadoop/emptydir
戻り値:0が正常に返され、-1が失敗しました.
rmr
使用方法:
hadoop fs -rmr URI [URI …]
deleteの再帰バージョン.例:
hadoop fs -rmr /user/hadoop/dir
hadoop fs -rmr hdfs://host:port/user/hadoop/dir
戻り値:0が正常に返され、-1が失敗しました.
setrep
使用方法:
hadoop fs -setrep [-R]
ファイルのコピー係数を変更します.-Rオプションを使用すると、ディレクトリ内のすべてのファイルのコピー係数を再帰的に変更できます.例:hadoop fs -setrep -w 3 -R /user/hadoop/dir1
戻り値:
0が正常に返され、-1が失敗しました.
stat
使用方法:
hadoop fs -stat URI [URI …]
指定したパスの統計を返します.例:hadoop fs -stat path
戻り値:
0が正常に返され、-1が失敗しました.
tail
使用方法:
hadoop fs -tail [-f] URI
ファイルの末尾の1 Kバイトの内容をstdoutに出力します.-fオプションをサポートし、動作はUnixと一致します.例:hadoop fs -tail pathname
戻り値:
0が正常に返され、-1が失敗しました.
test
使用方法:
hadoop fs -test -[ezd] URI
オプション:-eファイルが存在するかどうかを確認します.存在する場合は0を返します.
-zファイルが0バイトかどうかをチェックします.そうであれば0を返します.
-dパスがディレクトリの場合は1を返し、そうでなければ0を返します.
例:
hadoop fs -test -e filename
text
使用方法:hadoop fs-text
ソースファイルをテキスト形式で出力します.許可される形式はzipとTextRecordInputStreamです.
touchz
使用方法:
hadoop fs -touchz URI [URI …]
0バイトの空のファイルを作成します.例:hadoop -touchz pathname
戻り値:
0が正常に返され、-1が失敗しました.