• 締切済み

シェルの書き方を教えてください

UNIX上で、Aディレクトリ内にある全てのTIFFイメージの中で、特定のタグを使用しているもののみをピックアップしてファイル名を書き出すシェルを作りたいのですが、どなたか教えてください。 タグをチェックするプログラムはtiffinfoを使用しようかと思っています。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

まあ, 「シェルを書いたことのある人間」はそんなに多くないと思います. 普通の人が書くのはせいぜいシェルスクリプトだから. シェルスクリプトといっても実際にはただのプログラムなので, ちょっと変わったプログラム言語だと思えばそれほど難しくないはずです. 「シェルスクリプトを書いたことがあるかどうか」はほとんど問題ではありません. 例えば, シェルスクリプトを書いたことがあるかどうかに関係なく ・あなたが使おうとしているシェルの名前を挙げる ・foreach や grep について調べる ことはできるはずです. で, どこで困っているんですか?

otakesan
質問者

補足

ありがとうございます。 だいたいできました。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

tiffinfo がどんな出力をするのか知らんけど, foreach とか grep とかを使えばいいだけじゃないか? どこで困ってるんだろう.

otakesan
質問者

補足

ありがとうございます。と言いたいところですが、シェルを書いたことがないので、困っているのです。

関連するQ&A

  • シェルからtelnet接続する方法について

    UNIX、HP-UX環境での話ですが、 シェルからtelnet接続する方法がわかりません。 (出来れば接続のタイミング等もプロンプトに表示させたくないのですが) ※ftpで接続した後にあるディレクトリにあるファイル名が存在するかをチェックするのは厳しそうなので・・・・ ※ちなみにexpectは使用出来ません。 申し訳ないですが、何か良い方法があったらご教授願いますでしょうか? 宜しくお願い致します。

    • ベストアンサー
    • CGI
  • シェルスクリプトで「ディレクトリが存在したら~する」の表現は?

    unixのシェルについて質問です。 「ディレクトリaaa配下に任意のディレクトリ(ファイルではなく何かしらのディレクトリ)が在ったらpwdする」 という条件式はどう書いたらよいのでしょうか? イメージとしては以下しか浮ばないんですが間違ってますよね… すみません、よろしくお願いいたします。 if [ -d aaa/*] then  pwd fi

  • Bシェルで、ファイル内にある文字列があるかどうかチェックする方法

    Bシェルプログラムで、指定したディレクトリ内の全てのファイル内に、ある文字列があった場合、そのファイルを別のあるディレクトリに移動させる。というプログラムを作成したいのです。 指定したディレクトリ内のファイル名を取るとこまではわかったのですが、文字列を検索する術がよくわかりません。 ヒントでも何でも教えてください。 よろしくおねがいします。

  • 制限付きシェルについて

    UNIXのAIXのVer5.1を使用しています。 rmなどのコマンドを制限させたユーザを作りたいのですが、どのようなシェルを使えばいいか分かりません。 rbashのような機能を持ったシェルなどはないのでしょうか? もしくは、ユーザに特定のコマンドを規制することはできないのでしょうか?

  • シェルスクリプトで古いファイルの自動削除をするには?

    UNIXで以下の仕様を持つシェルスクリプトを作成しようと していますが、どうもうまくいきません。 どなたか、いい知恵を貸していただけないでしょうか? 目的: 特定のディレクトリ内にあるファイルについて、 システム日付より3日前のタイムスタンプを持つファイルを 削除する。 留意点: ・削除対象のファイルは複数存在する場合がある。 ・ファイルサイズは1件あたり 0byte-数百Mbyte となる  可能性がある。 ・ファイル名は不定。 ・スクリプトはBシェルまたはCシェルとする。 参考: ・現在使用しているOSについて  ls -l でのタイムスタンプにおける出力形式は以下のとおり  (デフォルト値?)  ・ 9月 28日 2000年    または   10月 24日 10時45分 知っている限りのコマンドを使っていろいろやってみたんですが、 結局ダメでした。 よろしくお願いします。

  • シェルの引数チェックについて

    HP-UNIX シェルで指定された引数の桁数のチェックや入力値のチェックを 行いたいと思っております。 自分なりに調べた所、awkコマンドを使用して、lengthや正規表現 でチェックできそうなのですが、シェルで指定された引数をどの ようにしてチェックすればよいのかがわかりません。 例)aaa.sh 引数1 引数2   ⇒aaa.shの中で、$@等で上記のチェックを行う???  イメージとしては、   ・if (length($1) == 10) ・$1!~/[a-zA-Z0-9]/  でも、aaa.shの中で、awkの使用方法がわかりません。 awkを使用する以上、ls -l | awk ~~~ のように、 一度、引数をファイルに出力してから、grepとパイプ機能を使用 する?しか方法はないでしょうか。 (実行環境で、パーミッションの設定でシェルを実行できない 為、上記の方法を試すには到っていません・・・パーミッションについて も、まだ理解が乏しい為。) シェルスクリプトを触り出して、まだ間もない事もあり、可能な のかどうかも判断できない状況ですが、ご存知の方がいらっしゃ いましたら、ご教授頂ければと思います。  

  • シェルスクリプト(Bash偏)の実行ファイルに関するご質問があります。

    シェルスクリプト(Bash偏)の実行ファイルに関するご質問があります。 ファイル名を変更するシェルスクリプトをbashで行おうとプログラムを作成したのですが、 実行するとbad interpreter: ディレクトリではありません とメッセージが出て終了します。記述に誤りがあるのか、実行の仕方が悪いのか分かりません。教えて下さい。 シェルの記述内容は ファイル名をtest.sh #!/bin/bash/ -f mv A.txt A.ori exit 実行方法として #>chmod x+a test.sh #>./test.sh で行いました。そうしたら、bad interpreter: ディレクトリーではありません とメッセージが出ます。 ちなみに #>. test.sh で実行するとターミナルがシェルの実行と同時に閉じてしまいますが、シェルを実行したディレクトリーを確認すると、処理が終わっておりました。

  • -のついたファイル名を操作するには…

    Sun OS 5.8を使用しています。不要なファイルを掃除しようとディレクトリー内を調べていると“-a"というファイル名のついたものが見つかりました。 内容を確かめようとcatやviコマンドで、ファイル名を-aとすると、シェルが-aを コマンドオプションと解釈していまい、うまく扱えません。このファイルの内容を見るにはどうしたらよろしいでしょうか?初歩的な質問で申し訳ありませんが、宜しくお願いします。ちなみにこのファイルはディレクトリーではありません。 一般のファイルで、私には読み書き実行の権限はあります。シェルはUnix標準のKshです。

  • ログインシェルの変更について

    現在Unixを使っています。 特定ユーザでログインした際のログインユーザを自分の作ったプログラムにしたいのですが、 chshなどのコマンドを使っても、利用可能なログインシェルに登録されていないため変更できないです。 どうすればログインシェルを変更することができるでしょうか? 初歩的なことかもしれませんが、よろしくお願いします。

  • シェルの中からシェルを呼び出して判定

    UNIXで以下のようなシェルが動作しております。 #!/bin/sh su abcdef -c './GHI'; err=$? if [! $err -eq 0 ] then echo エラーが発生しました fi exit このシェルは「abcdef」ユーザに移ってカレントディレクトリのシェルコマンド「GHI」の結果を判定するというものです。 UNIX上では問題なく動作しております。 これをLinuxでそのまま動作させると「err」に「su abcdef」というユーザ切替コマンド自身の正否を格納しているようです。 「'」でくくられた範囲内で結果をファイルに格納したりして、その後ファイルの中を見て判断するとうまくいくことは分かっておりますが、出来たらファイルなど使いたくありません。 このような場合、みなさんどうしてるんでしょうか? よく出てくるパタンだと思うのですがどうしても良い対処が見つかりません。 どうか宜しくお願いします。 Linuxは「miracle-Linux2.0」というOSです、いわゆるRedHat系です。

専門家に質問してみよう