• ベストアンサー

Linux、unix、シェルスクリプトの基礎知識、コマンドについて

会社でteratermを使ってコマンドベースの仕事をする機会があるため、コマンドやシェルスクリプトについて理解したいと考えています。 そこで疑問がわいてきたため、何点か質問があります。 1)teratermでtelnetで接続してコマンドを打つときはunixのコマンドですか?linuxのコマンドですか? 2)unixとlinuxで簡単なコマンドレベルでの差は無いものと考えて大丈夫でしょうか? 3)勉強するならunix、linuxどっちがお勧めですか? (今のところ参考書として、独習linuxか独習unixを買って勉強しようと思っています。他にお勧めの参考書があれば教えてください。) 4)シェルスクリプトを家でも作成してみたいのですが、ubuntuをインストールして端末上で操作し、作成して試すことはできるのでしょうか? (お勧めの参考書があれば教えてください。) 長くなってしまいましたが、よろしくお願いします。

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

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

linuxもunixから派生したものなのですが...どんな意味で「unix」「linux」と使ってますか? 1)teratermの接続先のOSです。 接続先がLinuxで動いていたらLinuxです。 2) ls,mvなどは、ほぼ同じです。 POSIXという規格があって、それに準拠してます。 http://ja.wikipedia.org/wiki/POSIX ただ、linuxはGNU Porjectで独自拡張したものを使っているので、linuxで使用できるオプションがunixでは使えない、ということは有り得ます。 http://ja.wikipedia.org/wiki/GNU また、文化的に、unix系はソースもらってきて自前でコンパイル、というのが普通です。 そのため、ソフトの使い方に macとWIndowsのような差は、ほとんどありません。 先のGNUのツールも、unix上でコンパイルして使用可能です。 3) OSの開発や管理をするなら、unixとlinuxとのどちら、となりますが、そうでないなら、とりあえず後でいいです。 それよりは、シェルそのものの解説書を読みましょう。同じシェルがインストールされていれば、unixとlinuxにちがいはありません。 4)必要なソフトがそろっているなら可能です。

haut001
質問者

お礼

ご回答ありがとうございます。 >4)必要なソフトがそろっているなら可能です。 必要なソフトとは何がありますか? フリーソフトで全て揃えられるなら揃えてみたいと思うのですが。。

その他の回答 (3)

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

ちょっと不十分でしたね。 Windowsなどと、考えかたは一緒です。 ファイルをコピーするのは何もインストールしなくてもできます。 Excelで表を作りたいなら、Excelをイントールしなければなりません。 参考書などの演習問題程度だったら、上の例の前者にあたるような、標準のインストールで動作します。 ですが、業務で使用するものとなると、上の例のExcelにあたるような、追加のインストールが必要かもしれません。

haut001
質問者

お礼

ご回答ありがとうございます。 演習問題程度の内容がまずは知りたいので追加は無しで問題なさそうです。

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.3

> 必要なソフトとは何がありますか? 最終的には質問者さんしかわからない問題です。 一般的なshell scriptの作成に必要なコマンド群はUbuntuでもRHELでもそろっています。(場合によっては多少パッケージを追加する必要があるかもしれませんが) でも質問者さんが最終的にどのようなことをするのかはこちらではわからないので、こればっかりは断言することはできません。 とはいえ、「shell scriptを1から覚える」というレベルであれば、特に問題はないでしょう。

haut001
質問者

お礼

ご回答ありがとうございます。 一般的な話なので問題なさそうです。

  • taka37777
  • ベストアンサー率30% (166/544)
回答No.1

UNIX、Linuxと書かれていますが、UNIXはSolarisなどを使っているのでしょうか? またスクリプトは使っているシェルによって違ってきます。Linux系はbashが多く、強いて言うとUNIXはshになると思います。 コマンドやパスに多少の違いはありますが、余り違いは無いはずですので、Linux、UNIXという本のタイトルではなく、内容がBone shell(sh)を勉強された方が良いと思います。 http://ja.wikipedia.org/wiki/Bourne_Shell

haut001
質問者

お礼

ご回答ありがとうございます。 OSはSolaris、Red Hat Linux、Fedora等使う機会があります。 Bone shell(sh)を勉強する上でお勧めの参考書はありますか?

関連するQ&A

  • Linuxシェルスクリプトを新しいコマンドにしたい

    Linux初級者です。よろしくお願いします。 OSにFedora Core 10, シェルにtcshを使用しています。 よく使用するコマンドを、まとめて一括で実行するように、 新しいコマンドを作成したくて、次のようなことをしていたのですが (1)ホームディレクトリにmybinというディレクトリを作成してPATHを通す。 (2)newbin1という以下の内容のシェルスクリプトを作成して、~/mybinに置いておく。 ================================== #!/bin/tcsh -f date #実行コマンド例1 echo $PATH #実行コマンド例2 ================================== (3)chmodコマンドでファイルに実行権限を与える。 上記のような方法で、作成したシェルスクリプト(newbin1)を PATHの通ったディレクトリ(~/mybin)に置いて、 > newbin1 とコマンドを呼び出しても、 "newbin1: コマンドが見つかりません" というエラーになってしまいます。 > which newbin1 とすると、ちゃんとファイルのパスが表示されるのですが、 *********************************************************** 自分で作成したシェルスクリプト(newbin1)を、 新しいコマンドとして認識させるにはどのようにすればよいのでしょうか。 また、そもそもシェルスクリプトを新しいコマンドにすることが 不可能だったりするんでしょうか? ************************************************************ 一括で実行したいコマンドが多い場合に、aliasで割り当てるのが大変なので、 できればaliasコマンドは使わずにできる方法を探しています。 基本的な質問かもしれませんが、よろしくお願い致します。

  • シェルスクリプトで困っています 2

    度々申し訳ございません。 現在、Linuxマシン1からLinuxマシン2へTelnetでログインし、Linuxマシン2上にあるシェルスクリプト(/bin/sh)を実行し、Linuxマシン2上のプログラムを実行した後、Linuxマシン2からログアウトするシェルスクリプトを作成中です。 その、Linuxマシン2からログアウトする際に、 "exit"を記述しているのですが、その"exit"がTelnetログアウトの意味で実行されず、シェルスクリプトを終了するの意味で実行されていて困っています。 どなたか上手くTelnetからログアウトできるようにシェルスクリプトを組む方法をご存知ではないでしょうか?もし判りましたらご教授下さい。 よろしくお願い致します。

  • UNIXシェルスクリプト

    お世話になります。 会社でUNIXシェルスクリプトを用いて残業申請自動送信メールの作成をしています。 下記のフローで作成したのですが、端末エミュレータを切るとjobが消えてしまい困っています。 バックグラウンドで実行したのですが、実行されませんでした。 回答よろしくお願いします。 at(指定時刻にメール送信)→sleep(来週の頭になるまで待つ)→goto(最初に戻る) と無限にatコマンドを週一回実行するスクリプトです。

  • LINUX(UNIX)

    Winはそこそこ得意です。 LINUXは基本的なコマンドが使える程度です。 1.現在シェルを勉強中ですが実務ではどのようなスクリプトを使っているのでしょうか? いいサンプルなどありまか? 2.apache,sendmail,sambaなど色々ありますが、 覚える順番で効果的なものとかあるのでしょうか? 重要(よく使うもの)順とか・・・ 3、Linux(UNIX)でいい書籍を探しているのですが なかなかこれというものがありません。 いいものがあれば教えてください。 (できればWEBも) 4.その他ご意見・アドバイス等 宜しくお願いします。

  • シェルコマンドについて

    先日自分のPCにやっとLinuxをインストールし、UNIXの勉強に励もうと思って いるのですが、基本的なシェルコマンドがまだよくわからなく苦戦しています。 もし、『シェルコマンド一覧表』みたいなのが、記載されているサイトがあるならば、URLを教えて頂けませんか?  また、効率の良いシェルコマンドの覚え方があったら教えて下さい。  宜しく御願いします!

  • UNIXのシェル、環境設定について教えてください。

    こんにちは。 UNIXについて詳しく勉強したいとおもっています。 コマンドなど基本的なファイル操作についてはある程度わかるのですが、UNIXの環境設定、環境変数、シェルなどの物につまづいています。 「環境変数って一体なんだよ!」 「シェルのBシェル、Cシェルって・・・」 こんな感じです。 これらについて初心者でもわかるような本、サイトを教えてください。 あと、初心者すぎて恥ずかしい質問なのですが、UNIX系OSにはいろいろな種類があるのは知っているのですが、「UNIX」という名前のOSはあるのでしょうか? また、Teratermを使っているのですが、これって何ていう名前のOSなのでしょうか? 最後に、会社なのでは、SolarisとLinuxどちらが多く使われているのでしょうか? これらの質問に詳しい諸先輩方アドバイスの方をよろしくお願いします。

  • UNIXとLinuxのコマンドは同じ?

    例によって、12月で派遣契約を打ち切られた者です。 そこで次はネットワーク系の仕事に入りたいと思うのですが、未経験なので、UNIXのコマンド等を勉強したいと思っております。 Linuxは簡単に手に入ったので、自宅のPCにインストールしたのですが、Linuxのコマンドを覚えれば、そのままUNIXでも使えるのでしょうか。 あるいは面接で、Linuxのコマンドを知っていると言えば、UNIXも使えると認識してもらえるのでしょうか。 よろしくお願いします。

  • シェルスクリプトの実行

    一台目のLINUX上でプログラムを実行しLANでつながれたもう1台のLINUXにあるシェルスクリプトを実行するにはC言語でどのようにプログラミングをすれば可能でしょうか? プログラムと同じ場所ならsystem(コマンド)で出来るんですよね? telnetとか使いますか?それとももっと単純に出来るのでしょうか?

  • perlスクリプト内でシェルコマンドを実行するには??

    タイトル通りなのですが、perlスクリプト内でシェルコマンドを実行させる方法が分からなく、困っています。 実行したいシェルコマンドはUNIXのcrontab なのですが・・。 また、perlスクリプト内以外でシェルコマンドを実行する方法はあるのでしょうか?? どなたか分かる方いらっしゃいましたらご教授いただけると幸いです。よろしくお願いします。

    • ベストアンサー
    • Perl
  • linuxのシェルスクリプト

    linuxのシェルスクリプト シェルスクリプトの質問をどこですればよいのかよくわからないので、ここでさせていただきます。 最近、始めてシェルスクリプトの勉強を始めました。 スクリプトに渡す引数を出力したいと思い、 echo $1 echo $2 echo $3 とかくと、スクリプトに渡した引数が出力されます。 これを、for文で書くと for i in 1 2 3 do echo $i done とねるのですが、これでは1,2,3が出力されてしまいます。 どうなおしたらいいのでしょうか? よろしくお願いいたします。