どぼじょのIT学習ブログ

高専卒土木女子がIT業界を目指してお勉強。

【FJORD】Linuxの操作その2

昨日の記事に続き、本日もLinuxの操作を実際にやってみます。
なお、わたしが使っているLinuxディストリビューションはdebian9のCUI環境です💡

目次

1.操作

Linuxで使える様々な操作の一部を紹介します😊

コマンド 意味 元の英語 備考
pwd カレントディレクトリのパスを表示 Print Working Directory
cd ディレクトリの移動 Change Directory
ls ディレクトリの中身を見る List オプション解説あり※1
cat ファイルの中身を出力する Concatenate
cp ディレクトリやファイルをコピー Copy オプション解説あり※2
mv ディレクトリやファイルを移動 Move
rm ディレクトリやファイルを削除 Remove オプション解説あり※2
mkdir ディレクトリを作成 Make Directory
file ファイルの種類を判別 File
touch 最終アクセス日時を編集 Touch 空のファイルを作ることもできる
find ファイルの検索 Find オプション解説あり※3
man コマンドのマニュアルを表示 Manual
shutdown シャットダウン Shutdown オプション解説あり※4
reboot 再起動 Reboot
history 実行したコマンド履歴を表示 history

※1 li のオプション
-a で隠しファイルも表示
-Fディレクトリとファイルを区別して表示
-R で表示対象のディレクトリの下層のディレクトリまで表示
-l でファイルの属性情報も表示

※2 cp rm のオプション
-rディレクトリを丸ごとコピー・削除ができます。

※3 find のオプション
-nameでファイル名検索ができます。

※4 shutdown のオプション
-r で再起動する
-hでシャットダウン後にシステムを停止する
-r-hのあとにtimenowでシャットダウンの時刻などを設定できる

2.Linuxの様々な操作

2-1. chmod:読み・書き・実行権限の変更

chmodコマンドは、データの読み・書き・実行の権限を変更するコマンドです。
権限は、macで言うとfinder右クリックの「情報を見る」で出てくるウインドウにありますね👀
f:id:mistyrinth:20181017135658p:plain
「実行」権限は書かれていませんが、画面の上から、ユーザー、グループ、その他(全員)のそれぞれに対して、読み・書きの権限が書かれています。
上記にls -lコマンドでファイルの属性情報を表示できると書きました。わたしのホームディレクトリで試すとこんな感じです!
f:id:mistyrinth:20181017141005p:plain
3つのデータが縦に並んで表示されています。それぞれ一番左に-rw-r--r--と書かれているのが、読み・書き・実行権限です😶
1文字目のハイフンを除いて、3文字ずつ分解すると、rw-``r--``r--です。
この3つはそれぞれユーザー、グループ、その他(全員)を表しています。
更に中を見たとき、rは readable(読める)、 wは writable(書ける)、xは executable(実行できる)を表しています。逆に、できないときは-が表示されます。
これで-rw-r--r--を見ると、ユーザーは読み書きができる・グループとその他は読み取り専用ということがわかります!👏
これを変更するのがchmodコマンドです!
chmodu+x``o-rなどといったものを付けて実行します。
これは最初の文字がuならユーザー、gならグループ、oなら全員(その他)を指します。
権限を付与する場合、2文字目は+になります。逆に権限を取り除く場合、-になります。
最後の文字は上記で説明した読み、書き、実行権限のことです✨
ではわたしのホームディレクトリにいる moji.c の実行権限を変更します。
まずはグループに書き込み権限を与えます。chmod g+w moji.cとなります。
f:id:mistyrinth:20181017143218p:plain
-rw-rw-r--となり、グループに書き込み権限が与えられたことが確認できました😆

2-2. ln:ディレクトリのリンク

ディレクトリのリンクというのは、イメージとしてはWindowsでいう「ショートカット」、macでいう「エイリアス」のようなものです。(同じものだとは今のわたしには断言できないので、イメージでお願いします💦)
lnコマンドを使いますが、よくシンボリック・リンクというものが使われるそうで、ln -sという形でリンクを作成します。
ホームディレクトリに file1 と file2 という2つのディレクトリを作成したので、file1のシンボリック・リンクを作ってみます。
リンクの名前は altfile1 とします。
f:id:mistyrinth:20181017145521p:plain
できました🎉

2-3. alias:コマンドの名前を変える

コマンドの名前を任意の文字列に変えるのがaliasコマンドです。
これは直接実行しても反映されません。
インターネット上の様々なページには、エディタを使って.bash.rcbashの設定ファイル)の中身に記述すれば良いと書かれていますので、挑戦。
わたしは vim をインストールしているので、vim .bashrcで.bashrcを開きます!
こんな画面が出ます。
f:id:mistyrinth:20181017163828p:plain
この一番下にaliasを記載して保存・終了します。
今回、現在のディレクトリを表示してくれるpwdコマンドをhereに変えました💡
f:id:mistyrinth:20181017185820p:plain
そしてsudo rebootで再起動をすると…
f:id:mistyrinth:20181017191732p:plain
pwdを実行した時と同じ結果が返ってきました!!なお、元コマンド名のpwgも引き続き使えます🙂
alias 任意コマンド名='元コマンド名'ですよ。位置を間違えると反映されません🤨

2-4. ps, kill:現在進行中のプロセスを見る、終える

ps コマンドで現在進行中のプロセスの一覧を見ることができます。
f:id:mistyrinth:20181017191953p:plain
今何もしていないのでこれだけですが、沢山のプロセスを実行している場合などに使えるのが、PIDと書いてあるプロセス番号を指定して終了させるコマンドです。
killコマンドでプロセス番号を指定すると、そのプロセスは終了します🔪

本日は以上です😊