Linux初心者のための基本的なBashコマンド

Bash

ターミナルコマンドはLinuxシステムを扱う最も簡単な方法であり、それを正しく使用することを学ぶことは生産性に驚くべき効果をもたらします。BashはLinuxターミナルで使用されるシェルの一種であり、デフォルトではほとんどのLinuxディストリビューションにbashシェルが含まれています。この投稿では、初心者が使い始めるべき最も便利なbashコマンドをいくつか紹介します。

内容目次

  • ファイルおよびディレクトリ関連のコマンド
  • 権限管理コマンド
  • ネットワーク関連コマンド
  • ユーティリティコマンド
  • 友達に自慢する
  • よくある質問

関連記事: 有用で面白いBashプロンプト8選

ファイルおよびディレクトリ関連のコマンド

Bashでのファイルとディレクトリの操作は非常に簡単で直感的です。学ぶべき最も使用されるコマンドをいくつか紹介します。

echoでテキストを印刷

ターミナルで任意の文字列を印刷するには、echoコマンドを使用します。「Hello world」を印刷するには、次のコマンドを使用します。

echo"Hello world"

新しい行を追加するには、-eフラグを使用してエスケープ文字\nを追加できます。

echo-e"hello \n world"

Bash Echo

touchを使ってファイルを作成

touchコマンドはファイルを作成するために使用されます。次のように単一または複数のファイルを作成できます。

touch file1.txt

複数のファイルを作成する場合は、ファイル名を一つずつ追加します。

touch file2.txt file3.txt

Bash Touch

関連記事: Emacsを使用してLaTeXドキュメントを作成する方法

nanoテキストエディタを使用してファイルに書き込む

nanoエディタを使用してファイルの内容を記述または修正できます。書き込みモードでファイルを開くには、次のコマンドを使用します。

nano file1.txt

上記のコマンドはターミナルにテキストエディタを開きます。好きなように記述し、Ctrl + Oでファイルを保存し、Ctrl + Xでエディタを終了します。

Bash Nano

catでファイルの内容を表示

ファイルを開かずにその内容を確認するには、catコマンドを使用します。

cat file1.txt

Bash Cat

lsを使用してファイルとディレクトリをリストアップ

上記の手順で、file1.txt、file2.txt、file3.txtという3つのファイルを作成しました。それらのファイルをリストアップするには、lsコマンドを使用します。

ls

Bash Ls

関連記事: WindowsにGitおよびGit Bashをインストールする方法

mkdirでディレクトリを作成

mkdirコマンドを使用してディレクトリを作成します。このコマンドは「make directories」の略です。

mkdir [ディレクトリ名]

「greetings」ディレクトリをこのように作成できます。

Bash Mkdir

cdでディレクトリを変更

cdコマンドを使用してディレクトリを変更および移動できます。

cd [ディレクトリパス]

../パスパラメータを使用して前のディレクトリに移動します。

cd ../

~パスパラメータを使用してホームフォルダーに直接移動できます。

cd ~

Bash Mkdir1 1

関連記事: Linuxのpwdコマンドについての初心者ガイド

pwdで作業ディレクトリに移動

任意のファイルまたはディレクトリの作業ディレクトリを確認したい場合は、pwdコマンドを使用できます。

pwd

Bash Pwd

cpを使用してファイルまたはディレクトリをコピー

cpコマンドには2つの引数が必要です。最初はコピーしたいファイルまたはディレクトリのパス、2つ目はターゲットの場所のパスです。以下の例では、「file1.txt」ファイルを「greetings」ディレクトリにコピーしています。

cp file1.txt greetings/

Bash Cp

関連記事: Linuxターミナルでテキスト、ファイル、フォルダをコピー&ペーストする方法

mvでファイルを移動および名前変更

ファイルを移動するには、mvコマンドを使用する必要があります。これも2つの引数が必要です:ソースファイルの位置と宛先の位置です。

mv file2.txt greetings/

Bash Mv

mvコマンドを使ってファイルの名前を変更することもできます。トリックはソースパスをそのままにして、宛先パスには修正した名前を同じファイル拡張子で書くことです。

mv file3.txt modified-file3.txt

rmを使用してファイルを削除

ファイルの位置とともにrmコマンドを使ってファイルを削除できます。

rm file2.txt

ディレクトリを削除したい場合は、-rfフラグを使用します。これにより、ディレクトリ内のすべてのファイルを再帰的に削除できます。

rm -rf greetings/

Bash Rm

関連記事: Bash Forループコマンドの使い方

rmdirでディレクトリを削除

空のディレクトリを削除するには、rmdirコマンドの後にディレクトリのパスを追加します。1つのコマンドで複数のディレクトリを削除することもできます。

rmdir greetings/  
rmdir dir1 dir2 dir3

Bash Rmdir

権限管理コマンド

Linuxの各ファイルにはさまざまな権限があります。たとえば、ファイルを表示または使用する許可がない場合があります。幸運なことに、このコマンドのリストを使用すると、Linuxでファイルの権限を変更できます。

chmodでファイル権限を変更

chmodコマンドを使用してファイルの権限を追加または削除できます。ファイルを読み取り可能にするには、chmodの後に+rフラグを追加します。ファイルを実行可能にするには、chmodコマンドの後に+xを追加します。

Linuxでは、ファイルを実行するために実行可能にする必要があることがよくあります。この問題を解決するために、ターミナルで次のコマンドを実行できます:

chmod +x ファイル名

実行可能ファイルは次のように実行できます:

./ファイル名

Bash Chmod

関連記事: ターミナルでスマートに作業するためのBashのヒントとトリック

suとsudoを使ってスーパーユーザーになる

新しいソフトウェアをインストールしたり、ユーザーディレクトリを超えてファイルやフォルダを変更したりするには、スーパーユーザーの権限が必要です。スーパーユーザーはオペレーティングシステム内の何でも変更できます。

Linuxでスーパーユーザーになるための一般的な2つの方法があります。suを使用すると、スーパーユーザープロンプトが表示され、そのプロンプト内でコマンドがスーパーユーザーとして実行されます。次のようにsuを使用できます:

sudosu

スーパーユーザープロンプトを終了するには、exitコマンドを実行します。

最新のLinuxディストリビューションは、suの代わりにsudoを使用します。コマンドの前にsudoを付けることで、スーパーユーザーの権限を昇格させることができます。コマンドが実行された後、権限は通常に戻ります。これはsuよりも安全なオプションです。

sudo apt update

関連記事: Bash変数とは何か、どう使うか?

ネットワーク関連コマンド

Linuxはサーバースペースで非常に人気があるため、ネットワーキングに関するさまざまなツールが付属しています。以下では、Linuxのネットワーキングに関する基本的な考え方を理解するためのコマンドをいくつか紹介します。

wgetを使用してファイルをダウンロード

wgetコマンドを使用してファイルをダウンロードし、任意のREST APIと対話できます。wgetはHTTP、HTTPS、FTP、およびFTPSプロトコルをサポートしています。ソースのリンクをwgetコマンドの後に追加するだけで、ファイルをダウンロードできます。

この例では、wgetを使用してビデオをダウンロードしています:

wget https://archive.org/download/BigBuckBunny_328/BigBuckBunny.ogv

wgetは自動的にビデオファイルを取得し、ダウンロードします。

Curlの基本

Curlは、サーバーにデータを転送するために使用されるネットワークユーティリティです。データ転送の再開、帯域幅の制限、プロキシサポート、ユーザー認証など、さまざまなオプションを提供します。

Curlを使用してファイルをダウンロードして保存するには、-Oフラグを使用します。

curl -O https://archive.org/download/BigBuckBunny_328/BigBuckBunny.ogv

ダウンロード中に接続が切断された場合は、-Cフラグを使用してダウンロードを再開できます。

curl -C-O https://archive.org/download/BigBuckBunny_328/BigBuckBunny.ogv

関連記事: Linuxでファイルを検索するためのfind、locate、whichおよびwhereisコマンドの使用方法

ユーティリティコマンド

日常の活動で使用できるユーティリティコマンドをいくつか紹介します。これらを知っておくと、多くの時間を節約し、効率よく作業できます。

日付

dateコマンドを使用して今日の日付を取得します。

date

出力には、日付、月、年、曜日、およびタイムゾーンが含まれます。

Mon Aug 15 04:39:43 PM IST 2022

grepで検索

grepは、ディレクトリ内の単語や文を検索するために使用できる非常に強力な検索ツールです。

grepを使用して必要なソフトウェアパッケージを見つけることもできます。たとえば、VLCプレーヤーをインストールする必要があるが、そのパッケージ名が分からない場合は、aptgrepを組み合わせてソフトウェアパッケージを検索できます。

apt search vlc | grep "vlc"

whichを使用してパッケージのインストールパスを確認

whichを使用してパッケージがインストールされている場所を確認できます。たとえば、インストールされているbashのバイナリの位置を見るには次のようにします。

which bash

historyで前のコマンドを取得

時々、コマンドを忘れてしまいます。幸運なことに、historyを使用して実行したすべての前のコマンドを表示し、記憶を呼び戻すことができます。

history

関連記事: Linuxターミナルで画像をリサイズおよび最適化する方法

killを使用してGUIアプリケーションを閉じる

ターミナルからGUIアプリケーションを開くと、そのアプリケーションのIDを取得します。これはアプリケーションへのハンドルのようなものです。

このアプリケーションを閉じるには、killコマンドを使用できます。

kill [アプリケーションID]

Bash Kill

manでCLIユーザーマニュアルを読む

CLIツールのドキュメンテーションは、manコマンドを使用して確認できます。

man echo

上記のコマンドは、echoコマンドのマニュアルを表示します。

Bash Man Echo

ここでは、echoコマンドに利用可能なすべてのフラグについて学ぶことができます。自分のニーズに合わせてコマンドをカスタマイズするために、さまざまなフラグを試してみるべきです。マニュアルページを終了するには、qボタンを押します。

ターミナルをクリア

ターミナルが clutter で埋まっている場合は、clearコマンドを使用してきれいにできます。

clear

ターミナルウィンドウをきれいにするには、Ctrl + lショートカットを使用することもできます。

関連記事: 自分のLinuxカーネルをコンパイルするときの有用なヒント5選

友達に自慢する

スクリーンにランダムなクールなものを印刷して楽しんだり、友達に自慢したりしたい場合は、cmatrixというツールを使用できます。

cmatrixをインストールするには、次のコマンドを実行します。

sudo apt update  
sudo apt install cmatrix

ターミナルでcmatrixを実行します。

cmatrix

出力はマトリックスのスナップショットのようになります。

Bash Matrix

単純なbashコマンドslを使用して移動する列車を表示することもできます。次のコマンドを使用してインストールできます。

sudo apt update  
sudo apt install sl

ターミナルでこのユーティリティを実行します。

sl

Bash Train

関連記事: 2024年に選ぶべきLinuxディストリビューショントップ12

よくある質問

bash以外でLinuxの他のシェルには何がありますか?

bash以外にもLinuxシェルには多くの選択肢があります。Zシェル、fishシェル、cシェルなどが最も人気があります。それぞれのシェルには特有の特徴があることに注意してください。したがって、特定のシェル用に作成されたスクリプトは他のシェルでは実行できません。

bashシェルの目的は何ですか?

Bashシェル、または一般的にシェルは、ファイルやディレクトリを効率的に操作するのに役立ちます。シェルにはcpmvtouchなど、多くの必須ツールがあり、ターミナルで非常に簡単にファイルを作成および修正するのに役立ちます。

bashシェルのいくつかの制限は何ですか?

他のスクリプト言語とは異なり、bashは非常に遅く、エラーが発生しやすいです。bashの主な欠点は、デバッグフレームワークがないことです。これにより、bashは大規模なスクリプトや自動化には適していません。