•   shibata
  • May 19, 2018
  • Tags Shell Script

shellコマンドについて調べてみた

1からshellコマンド

shellについて再度一から勉強

開発をしているとshellを頻繁に使う機会が少なく忘れてしますので、再度勉強もかねて、shellについて調べてみることにしました。間違いもあるかと思います。 その場合はご指摘お願いいたします。


shellとは

shellはオペレーティングシステム (OS) のユーザーのためにインタフェースを提供するソフトウェアであり、カーネルのサービスへのアクセスを提供する。それだけではなく、この用語は非常にゆるやかに応用され、特定のコンポーネントの周辺に構築された任意のソフトウェアを含むこともある。OSの内部(カーネル)とユーザーの間にある外殻であることから、このように呼ばれる。



shellの種類

shellと一括りでまとめられますが、色々種類があります。
・sh


Bourne Shell(ボーンシェル)は、AT&Tベル研究所のスティーブン・ボーンが開発した、Unix Version 7 のUnixシェルである。
・bshell
Unixシェルかつコマンド言語(英語版)であり、GNUプロジェクトにおけるBourne Shellのフリーソフトウェアによる代替としてブライアン・フォックス(英語版)によって作成されたシェル。

・cshell
C shell(シーシェル、csh)は、カリフォルニア大学バークレー校の大学院生だったビル・ジョイが1970年代後半に開発したUnixシェルである。

上記以外にもKornShell、Z Shellなど色々あります。

コマンドラインの操作方法を説明します。

ctrl+a
 行の先頭への移動
ctrl+b
 一文字後方への移動
ctrl+d
 カーソル位置の文字を削除
ctrl+e
 行の最後への移動
ctrl+f
 一文字前方への移動
ctrl+h
 カーソル位置の前方の文字を削除
ctrl+k
 カーソル位置から後方の文字をすべて削除
ctrl+l
 画面の表示を消去
ctrl+n
 一つ前のコマンド履歴を表示
ctrl+p
 次のコマンド履歴を表示
ctrl+u
 カーソルから前方の文字をすべて削除
ctrl+y
 最後に削除した内容を挿入
ctrl+w
 スペース区切りで前方の単語を削除


コマンドの説明

 では本題のコマンドについて説明していこうと思います。
オプションについては利用頻度の高いもののみ記載しています。
pwd
 カレントディレクトリの表示
cd [ディレクトリ]
 カレントディレクトリの変更
ls [オプション] [ファイル名]
 ディレクトリ内のファイルを表示
・オプション
 -a ファイルやディレクトリ以外にファイル名の先頭に.がつくものも含めてすべてを表示する
 -l ファイルタイプ、ファイルパーミッション、ハードリンク数、所有者、所有グループ、ファイルサイズ、タイムスタンプを表示する
 -t タイムスタンプが新しい順に並べて表示する
 -r ソートの順序を逆にして表示する
chmod [オプション] [rwx] ファイル名
ファイルのファイルパーミッションを変更する
まずここではファイルパーミッションについて説明します

・ファイルタイプは以下になります
 - ファイル
 d ディレクトリ
 l シンボリックリンク
・ファイルモード
最初の三文字がオーナー、次の三文字がグループ、最後の三文字がその他のグループになります
・パーミッション記号とその意味は以下になります
 r 読み取り(read)
 w 書き込み(write)
 x 実行(execute)
・権限の付与方法
 + 権限を追加する
 - 権限を削除する
 = 指定した権限と等しくする
・以下の使用例となります
 chmod +w ファイル名 ファイル名の書き込み権限を追加
 chmod -r ファイル名 ファイル名の読み取り権限を削除
また数字指定によるパーミッションの変更もできます
 読み取り(r) 4
 書き込み(w) 2
 実行(x) 1

viについて説明します

viは標準のテキストエディタになります
テキスト入力モードとコマンドモードの2種類があり、テキスト入力はテキスト入力モードで実行し、それ以外のカーソル移動、検索、置換、削除、コピー&ペーストなどの処理についてはコマンドモードで実行します。では操作方法について説明していきます
vi [ファイル名]
ファイルを開く

・テキスト入力モードへの切り替え方法
 a カーソルの次の位置からテキスト入力
 i カーソルの前からテキスト入力
 o カーソルと次の行の間にテキスト入力
 I 行の先頭からテキスト入力
 A 行の末尾からテキスト入力
 O カーソルと前の行の間にテキスト入力
・コマンド入力モードへの切り替え方法
 escキー コマンドの入力モードへ切り替え
・カーソル移動に関するコマンド
 b カーソルを前の単語の先頭に移動
 e カーソルを単語の末尾に移動
 h カーソルを前の文字に移動
 j カーソルを次の行に移動
 k カーソルを前の行に移動
 l カーソルを次の文字へ移動
 w カーソルを次の単語の先頭に移動
 ^ カーソルを行の先頭に移動
 $ カーソルを行の最後に移動
その他にもまだまだたくさんのコマンドがありますが、その他の説明はまたの機会に書いていこうと思います。

Additional Images




Comments

Add your comment

Book a free consultation
user-symbol

Stay in touch

Get Practical Tips For Business and Developers.
Learn about PieceX Community Needs for Source Code Projects.
Be the First to Know PieceX Newest Free Community Code Projects.