第5章シェルのラズベリーパイ
Raspberry Piのパフォーマンスは高くなく、コンピューターグラフィックスの表示はリソースを消費します。幸いなことに、LinuxはRaspberryPiとより簡単に対話する方法を提供します-シェル
5.1初期シェルテスト
ターミナルを開くと、黒い背景ウィンドウがデスクトップに表示されます。ウィンドウには
pi@raspberrypi:~ $
、piはユーザー名、raspberrypiはコンピューターの名前、名前のプロンプトが表示されます。キーボードを押すと、ネーミングプロンプトに文字が表示されます。キーボードを押すと、文字が表示されますある生命の名に言及示す演算子は。以下のようであれば、ノックヒットキープレートを、そしてその単語の文字がします大幅に示すには、プロンプトのテキストコマンドの文字列の形成を。英語では、シェルはシェルのようなシェルです。Linuxでは、いわゆるシェルはターミナルで実行されるテキストインタラクティブプログラムです。シェルはテキスト入力を分析してから、テキストを対応するコンピューターアクションに変換します。ユーザーは、シェルの「シェル」を介してコンピューターに触れます。
次のコンテンツでは、はLinuxシステムのシェルコマンドプロンプトを表すために使用されます。たとえば、dataコマンドを入力します。'Linuxシステムのシェルコマンドプロンプトを表すには、たとえば、dataコマンドを入力します。`表示してL I N- U XベースのシステムのS H E L Lのコマンドせる挙げ示す記号、ケースなどの入力にD A T Aのコマンドのコマンドを:' data`
日時関数の関連データ。Enterキーを押すと、シェルはシステムの現在の時刻を表示します。
シェルはシンプルに見えますが、実際にはグラフィカルデスクトップよりもはるかに強力です。Linuxオペレーティングシステムは、UNIXオペレーティングシステムから継承されます。LinuxオペレーティングシステムとUNIXオペレーティングシステムはどちらも、当初はユーザーオペレーティングシステムインターフェイスであるシェルのみを提供していました。このテキスト操作に慣れている場合は、徐々にその利点を実感できます。
5.2コマンドを使用してRaspberryPiを理解する
1.Linuxの一般的なクエリコマンド
- まず、
lscpu
コマンドを使用して情報CPUを照会します。
$lscpu
CPU情報はターミナルウィンドウに出力されます。
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Model name: ARMv7 Processor rev 4(v7l)
CPU max MHz: 1200.0000
CPU min MHz: 600.0000
- 次に、
free
コマンドを使用してメモリ使用量を理解できます。
$free -h
上記のコマンドを使用すると、-hオプション(オプション)が追加されます。コマンドにオプションを追加することにより、コマンドの動作を変更できます。ここでの文字hは、人間が読めることを意味します。-hオプションを使用しない場合、freeコマンドは結果をバイト単位で表示します。-hオプションを使用すると、freeは結果を表示により適した単位に変換できます。
Shellによって出力された結果は次のとおりです。
total used free shared buffers cached
Mem: 862M 739M 122M 14M 44M 397M
-/+ buffers/cache: 298M 563M
Swap: 99M 0B 99M
ご覧のとおり、メモリの総量は862MBで、使用済みおよび使用可能なメモリスペースも他の列に表示されます。選択肢を増やすことで、Linuxコマンドの機能がより豊富になります。
- SDカードの保管状況をもう一度確認し、コマンドfdiskを使用します。
$sudo fdisk -l
fdiskコマンドは、ディスク情報を表示するために使用されます。オプション-l
は、すべてのディスクのリストを表します。コマンドの前にsudoが追加されていることがわかります。一部のコマンドを実行するには特別な権限が必要です。sudoは、システム管理者に次のコマンドを実行するための権限を提供しますfdisk -l
。結果の最後の2行は次のとおりです。
コードはスクリーンショットで補足する必要があります
SDカード全体が2つのパーティションに分割され、1つは60MBで、Raspberry Piの起動専用で、もう1つは他のすべてのデータを保存するために使用されます。
- を使用すると
lsusb
、すべてのUSB周辺機器を見つけることができます。
$lsusb
シェルは印刷します:
Bus 001 Device 005: ID 0e8f:2517 GrennAsia Inc.
Bus 001 Device 006: ID 045e:0750 Microsoft Corp. Wired Keyboard 600
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.S<SC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
uname
コマンドを使用すると、オペレーティングシステムの情報を印刷できます
$uname -a
オプション-a
はすべての関連情報を表示し、シェルは印刷します
Linux raspberrypi 4.1.19-v7+ #858 SMP Tue Mar 15 15:56:00 GMT 2016 armv7l
GNU/Linux
ここでシステムが使用するカーネルはLinuxバージョン4.1.19であり、カーネルのリリース時間は2016年3月15日です。
- 最後に
ifconfig
、コマンドを使用してネットワークインターフェイスを表示します。
$ifconfig
コマンド操作の結果は次のとおりです
。実際のマシンのスクリーンショットでコードを補足する必要があります。
そのうち、eth0はイーサネットインターフェイス、wlan0はWi-Fiインターフェイス、loはマシンを表すために使用される仮想ローカルインターフェイスです。インターネットに接続されたインターフェースでは、インターフェースのIPアドレスなどの情報を確認できます。たとえば、wlan0のIPアドレスは192.168.0.108です。ネットワークケーブルが接続されていないため、eth0にはIPアドレスがありません。
2. RaspberryPiの特別なクエリコマンド
- 一般的なLinuxコマンドに加えて、Raspberry Piは、RaspberryPiハードウェアと直接対話するためのvcgencmdコマンドも提供します。たとえば、シェルで実行します。
$vcgencmd measure_temp
上記のコマンドでは、2番目のセグメントmeasure_temp
はコマンドのパラメーターです。パラメータは、オプションに加えてコマンドに追加情報を提供するもう1つの方法です。上記のコマンドはCPUの温度を返し
temp=51.5'C
ます。次のコマンドを使用してRaspberryPiのコア電圧を測定し
$vcgencmd measure_volts core
ます。電圧値を返します。
volt=1.2000V
5.3シェルとは
$free -h
スペースを含めて合計7文字。スペースによるシェルプロシージャは、コマンドの異なる部分を区別します。最初の部分はコマンド名で、残りの部分はオプションとパラメーターです。この例では、シェルは2番目の部分をさらに分析します。このセクションの冒頭にあるのは「-」文字であるため、オプションであることがわかります。
シェルはコマンド名を使用して、次にコマンド名に対応するアクションを実行します。俳優が台本に従って行動する演劇の舞台にいるようです。シェルコマンドは、次の3つのカテゴリに分類されます。
- Shell内建函数(built-in function)。
- 可执行文件(executable file)。
- 别名(alias)
シェルの組み込み関数は、内部シェルのスクリプトに格納されています。同様に、実行可能ファイルはシェルの外部に保存されたスクリプトです。シェルは、コマンドを正しく実行するために、システム内のコマンド名に対応する実行可能ファイルを見つける必要があります。絶対パスを使用して、実行可能ファイルがどこにあるかをシェルに伝えることができます。いわゆるパスは、ドキュメントストレージスペース内の場所を指します。たとえば
/bin/date
、実行可能ファイルパスがルートディレクトリにあるbinファイルフォルダ内に表示される日付です。
ユーザーがコマンド名のみを指定し、正確な場所を指定しない場合、シェルはそれ自体でいくつかの特別な場所を検索する必要があります。これは、いわゆるデフォルトパスです。シェルは、コマンドと同じ名前の最初の実行可能ファイルを実行します。これは、シェルが実行可能ファイルの場所情報を自動的に入力するのと同じです。which
実行可能ファイルに対応するコマンドコマンド名を決定できます。
$which date
エイリアスは、シェル内の将来のコマンドの短い名前であり、コマンドに対応する省略形を使用して呼び出すことができます。シェルでは、alias
エイリアスを定義できます。
$alias freak="free -h"
シェルはエイリアス定義を記憶します。freak
時間内にシェルにこのコマンドを入力した後、入力と同等になりますfree -h
シェルでtype
は、コマンドコマンドの種類を理解することができます。コマンドがある場合は、実行可能ファイルは、type
ファイルのパスを出力します。
$type data
$type pwd
一般に、シェルはスペースやその他の特別な記号に基づいており、ユーザーが要求したアクションをコンピューターが理解して実行できるようにします。
5.4シェルの選択
- シェルはテキストインタープリタープログラムの総称であるため、複数のシェルが含まれます。
- Raspberry Piには、shとbashがインストールされています
- Bashはshの改良版です。一般的に、bashをお勧めします。
$echo $SHELL
現在のシェルタイプを表示する- テキストを印刷するためのエコー端末です
$
が、新しいシェルの特殊記号であり、シェルにプロンプトを表示し、その後に一般的なテキストが続くのではなく、変数データを格納するために使用されます。シェルは、変数名に基づいて実際のテキストを検索し、それを変数の場所に置き換えます。現在使用中の情報を格納するシェルSHELL変数sh
は、exit
コマンド出口を使用して、bash起動コマンドで使用できます。
- テキストを印刷するためのエコー端末です
5.5コマンドオプションとパラメータ
- コマンドラインでは、オプションとパラメータが含まれている可能性があることがわかっています。一般に、動作制御コマンドおよびパラメーターのオプションは、コマンドのオブジェクトの役割を記述します。次に例を示します。
$uname -m
- 上記のコマンドでは、オプション
-m
がコマンドのuname
動作に影響を与えuname
、Raspberry PiCPUモデルの出力になります。このオプションの影響を受けない場合。その場合、uname
出力はLINUXになります。各コマンドを多機能のスイス軍のナイフと見なすのもよいでしょう。このオプションを使用すると、コマンドでさまざまな機能を切り替えることができます。英語のアルファベットを導く「-」によって、これは短いオプションとして知られています。複数の短いオプションの文字を組み合わせて、同じ「-」を続けることができます。たとえば、$uname -m -r
$uname -mr
それは同等です。長いオプションもあります。たとえば、「-」を使用して英語のシングルブレークをリードすることです。たとえば$date --version
、プログラムの日付から出力されるバージョン情報です。 - スイスアーミーナイフの動作を制御するオプションの場合、パラメーターはスイスアーミーナイフの遊びの原材料の目的を提供します。
echo
例として命令するために、彼は端末文字に印刷することができます。彼が印刷することを選択したオブジェクトは、まさにそのパラメーターです。$echo hello
- オプションには、オプションの動作の原材料を説明するための変数が含まれている場合があります。
$sudo date --set="1999-01-01 8:00:00"
- オプション「-set」は時間を設定するために使用され、等符号リンクがそのパラメーターです。dateは、日付をこの変数で表される日付に設定します。短いオプションの場合、等号を置き換えるためにスペースを使用する必要があります。
$sudo date -s "1999-01-01 08:00:00"
- シェルはスペースに敏感であることに注意してください。パラメータ情報にスペースが含まれている場合、シェルが全体として認識できるように、引用符を使用してパラメータをまとめる必要があります。
- オプションとパラメータは、コマンドに提供される追加情報です。したがって、コマンドがこれらの文字列を最終的にどのように処理するかは、コマンド自体によって決まります。
5.6なじみのないコマンドを理解する方法
- とは
$whatis ls
** whatis **コマンドの役割は、非常に短い文でコマンドを紹介することです
- おとこ
$man ls
男はコマンドヘルプのためにマニュアルを返します。Linuxに付属するほとんどのコマンドについて、作成者が作成するときに、このコマンドの使用方法をユーザーに説明するヘルプドキュメントを作成します。人は私たちがLinuxを理解するのに最適な百科事典であると言えます。それは、Linux自体のコマンドの機能を説明するだけでなく、Linuxシステムファイルやシステム呼び出しを照会することもできます。Linuxを深く学びたい場合は、manを使用して関連ドキュメントを照会する方法を知っている必要があります。
- 情報
$info ls
infoは、より詳細なヘルプ情報を返します。
5.7シェルのヒント
コマンドの完了
ほとんどのシェルには、コマンド完了の機能があります。$
コマンドの後ろの部分(「dat」など)を入力し、TABキーを押すと、Linuxは「date」と呼ばれる補足を行います。このプロセスでは、シェルはコマンド名のすべての可能性を検索します。可能性が1つしかない場合、シェルはファイル名を入力します。複数のタイプがある場合、最初にTABキーを押しても応答がありません。2回目にTABキーを押すと、端末は可能なすべてのコマンド名を出力します。たとえば、「da」を入力してTABを2回押すと、端末は次のように出力します。dash date
このプロンプトは、入力するコマンドを覚えておくのに役立ちます。
ファイル名の補完
入力がパラメータとしてのファイル名である場合は、上記のように入力することもできます。
履歴コマンド
シェルでは、上矢印を使用するかhistory
、コマンドの前に入力コマンドを表示できます。
コマンドの中止と一時停止
コマンドの実行中にコマンドを途中で停止したい場合は、ショートカットキーCtrl + Cを使用できます。一時的に停止したい場合は、ショートカットキーCtrl + Zを使用できます。サスペンドとポーズは、後で導入されるLinuxの**シグナル(シグナル)メカニズムを参照します。