• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Linuxの次のシェルスクリプトについて)

Linuxシェルスクリプト:passwd --stdinの意味と使い方

このQ&Aのポイント
  • Linuxのシェルスクリプトで使用される「passwd --stdin」の意味と使い方について解説します。
  • 「passwd --stdin」は、echoを使用してパスワード情報を渡す方法です。
  • また、「passwd $USERNAME --stdin」と書くことでも同じ結果が得られます。複数のパスワードを受け取る場合には、パスワードをスペースで区切ることがでできます。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.3

>「--stdin」って他のどんなコマンドで使われてますか? たまたま、passwdで標準入力から…という動作を切り替えるオプションスイッチの名前が「--stdin」だっただけの問題です。 他のコマンドでは別の名前だったり、そもそもそんな切り替えが不可能な場合だってあったりするでしょう。 >また日本語で書かれたマニュアル、よいサイトご存知でしたら教えていただけませんか? 検索すると見つかると思いますけどね。 http://linuxjm.sourceforge.jp/html/shadow/man1/passwd.1.html とか。 # http://linuxjm.sourceforge.jp/index.html がJM Projectのページ。 ディストリビューションが不明ですが、日本語のmanページが用意されている場合もあります。 Redhat系列なら man-pages-ja ってパッケージ名で用意されていたりします。 # ただし、全てのmanページが入っているワケではないですし、翻訳タイミングの関係から内容が古い場合もあります。

okidsaya555
質問者

補足

皆様ありがとうございます。 どうにか納得できました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

man passwd でマニュアルを読みましょう。 -で始まる引数は、大抵は「オプション」です。 オプションは、コマンド毎に違うので、詳細は、そのコマンドのマニュアルで調べることになります。 passwdのマニュアルを調べると、このオプションは、通常は端末からのキー入力になるものを、標準入力からの入力に変更するためのものです。 コマンドの引数の順番は、コマンド毎に違い、順番に意味があるので入れ替え不可能なものもあれば、順不同のものもあります。 passwdの場合 passwd --stdin $USERNAME も passwd $USERNAME --stdin も 「--stdinオプションを有効にして、ユーザー『$USERNAME』のパスワードを変更」 という同じものになっています。 > | がパスなので表示がpasswdの入力になるのもわかります |は「パイプライン」あるいは単に「パイプ」と言います。 前段コマンドの標準出力を、後段コマンドの標準入力とします。

okidsaya555
質問者

補足

Wr5さん、kmeeさん有り難うございます。 マニュアル見てみました、マニュアルがあるのは知ってましたが初めてみました。 英文なのでよくわかりませんが、記載いただいてるような内容のようです。 使ってみて思うように動作ししてるんですが、なんかシックリしないんですよ。 「--stdin」って他のどんなコマンドで使われてますか? また日本語で書かれたマニュアル、よいサイトご存知でしたら教えていただけませんか?

すると、全ての回答が全文表示されます。
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

>| がパスなので表示がpasswdの入力になるのもわかります 「パイプ」です。 >「passwd $USERNAME --stdin」と書いても同じ結果になるし 引数の順番が重要。というワケではないでしょうから、入れ替えても問題は無いのでしょう。 cpとか引数の順番に意味がある場合は入れ替えると正しく動作しないでしょうけど、passwdの場合は順番は影響しないのでしょう。 # 引数無しでも動作しますしね。 >2個も3個も受け取るときはどう書けばいいのか 一人のパスワードの設定で2個も3個も…とは?

すると、全ての回答が全文表示されます。

関連するQ&A