【Mac】基本的なターミナルコマンドまとめ
【はじめに】
CentOS内でPHP, apache, MySQLをインストールし、SSH接続を行いホストOS(Mac)で操作してます。
ターミナルでの操作ではコマンドが必須なので、備忘録兼ねてまとめてみました。
【前提条件】
※説明する上で例を用いるので下記のようにしております。
/home/test :ディレクトリ「home」内にディレクトリ「test」を作成する
ディレクトリ「test」内に、ファイル「test1.txt」、「test2.txt」を作成
【コマンドまとめ】
コマンド |
動作・操作 |
解説 |
sudo |
スーパーユーザー(rootユーザー)の権限でコマンド実行できる |
sudo [オプション] -b:バックグラウンドで実行する -h:ヘルプメッセージを表示する -l:許可・禁止されているコマンドの表示 -S:標準入力からパスワードを読み込む -u ユーザー名:コマンドを実行するユーザーを指定する |
su |
rootユーザーに変更する |
su でrootユーザーに変更される(su 後にユーザー名でユーザー変更できる) |
ifconfig |
|
|
ネットワークの接続確認をする |
ping アドレス →IPアドレスやネットワークアドレスの疎通確認ができる |
|
ps |
Linux上で動作しているプロセスを表示する |
ps [オプション]で下記それぞれ実行できる -A:全プロセス表示 a:端末操作のプロセスを表示する x:端末操作以外のプロセスを表示する c:実行中のコマンド名を表示する u:CPUやメモリの使用率も表示する l:プロセスの状態なども表示する f:プロセスを改装で表示する aux:a,u,xのコマンドを組み合わせたもの |
vi |
テキストエディタを起動する
viコマンド参考: |
vi ファイル名 指定したファイルをエディタとして開く viエディタには入力モードとコマンドモードがある。 |
現ディレクトリを表示する |
ディレクトリ「test」で入力すると、/home/testと表示される |
|
ls |
ディレクトリ「test」内で コマンド test1.txt test2.txt が表示される |
|
ls -l |
ファイルの詳細も表示する |
lはlongなフォーマットを意味する。 左から「ファイルタイプ」「パーミッション」「ハードリンクの数」「オーナー名」「グループ名」「バイトサイズ」「タイムスタンプ」「ファイル名」となっている |
ls -1 |
リストを縦に並べる |
ディレクトリ「test」内で コマンド(ls -1)で縦に表示される test1.txt test2.txt |
ls -tl |
更新時間順に並べる |
更新時間が最新なものから古いものへ並べて表示される |
ln |
ディレクトリ、ファイルへのリンクを登録する |
ln リンク元 登録名 ln test1.txt test1 →test1.txt をtest1という名でリンクを作成する |
ln -s |
シンボリックリンクを作成する |
ln -s リンク元 登録名 |
ln -f |
すでにある登録名が存在する場合、上書き登録できる |
ls -f リンク元 登録名 ln -f test2.txt test1 →test1の内容がtest2.txtに上書きされる |
less |
ファイルの内容を表示する(読み取り専用で開く) |
less text1.txt /後に文字列の入力で検索も可能 終了するときは :q を入力する |
less -N |
ファイル内容を行番号含めて表示する(読み取り専用で開く) |
less -N text1.txt /後に文字列の入力で検索も可能 終了するときは :q を入力する |
cat |
ファイルの内容を表示する(ターミナル上に) |
cat text1.txt で内容を表示することができる(行数が多い場合、最後の1画面分のみ) |
cat -n |
ファイル内容を行番号含めて表示する(ターミナル上に) |
cat -n text1.txtとすると行番号含めた内容を表示できる 例test1.txt: 1 Hello World! |
cat X >> Y |
ファイルの中身を写す |
cat test1.txt >> test2.txt 写す先のファイルが存在する場合は内容が追記される。 test3.txtなど存在しない場合は、test1.txtの内容で作成される。 |
ファイル内の文字列を検索する |
grep テスト test2.txt →test2.txt内で文字列テストを検索し、検索した文字含めて行を表示する。(複数ある場合は複数行表示される) 表示例:こちらはテストで表示しています。 |
|
cd |
ディレクトリを移動をする |
ディレクトリ「home」にいるとき /homeから/home/testへ移動 cd test
/html/testから/htmlへ移動 cd .. |
chmod |
ファイルのアクセス権限を変更する 参考ページ「パーミッション」: |
chmod アクセス権限 ファイル名 chmod 777 test1.txt →全ての利用者に全ての権限を与える 所有者、グループ、その他の順にそれぞれ0から7の整数で表わされる。 読み込みができる=4 書き込み、変更ができる=2 実行ができる=1 |
rm |
ファイルを削除する |
rm ファイル名 removeの略で、指定のファイルorディレクトリを削除できる |
rm * |
複数のファイルを削除する |
ディレクトリ内のファイル全て削除する |
rm -r |
ディレクトリも削除対象とする |
rm -r →ディレクトリも対象とし全て削除する |
rm -i |
ファイルやディレクトリを確認して削除する |
rm -i test1.txt →test1.txtの削除していいか確認してから削除する (削除する:y、削除しない:n) |
mv |
名称変更(ディレクトリ、ファイル) |
ディレクトリの場合 mv /home/test /home/test2 →home内のディレクトリtestをtest2へ名称を変更する
ファイルの場合 mv test1.txt test10.txt →test1.txtをtest2.txtにファイル名を変更する |
mkdir |
ディレクトリを作成する |
mkdir test100 →test100というディレクトリが作成される |
mkdir -p |
階層のディレクトリを作成する |
home/test時に下記実行 mkdir -p test1/test2 |
【最後に】
まだまだ使いこなせてないので、経験積みながら覚えていければと思います。
間違いがあったり、この他にこんないい機能あるよとかあればコメント頂けるとありがたいです!
VirtualBox上でのCentOS7.0系のネットワーク接続
【はじめに】
プログラミングとは無縁な職業ですが、IT業界に興味持ちLAMP環境含めて学び始めてます。
先日VIrtualBoxにCentOS7.0を導入しました。
(その記事はまた次回…)
CentOS上でネット接続がうまくいったりいかなかったりがあったので、メモとして残します。
- ネットワークアダプターとは?
- NAT
- NATネットワーク
- ブリッジアダプター
- 内部ネットワーク
- ホストオンリーアダプター
- 汎用アダプター
- 最後に
【ネットワークアダプターとは?】
コンピュータに他のコンピュータへ接続する機能を追加するための拡張カードのことである。つまり、ゲストOSからホストOSにネットワーク接続する為に必要な機能となります。
接続方法は数種類あるので、それぞれ見てみましょう。
VirtualBoxの設定画面は下記のようにいけます。
1:設定を開く。
2:ネットワークカテゴリーを選択。
画像からもわかるように接続方法は6種類もあります。
それぞれ機能についてまとめました。
【NAT】
NAT (Network Address Translation)は内部から外部に対して通信を行います。
VIrtualBoxごとにNAT接続されるので、VIrtualBox間の通信はできません。
【NATネットワーク】
こちらは先ほどのNATに似ていますが、加えてVirtualBox間での通信が可能となります。
(NATと内部ネットワークのできることが合わさったイメージ)
【ブリッジアダプター】
ホストマシンのネットワークに接続する方法で、外部ネットワークへの接続やホスト側からのリモート接続も可能です。
外部から隔離する必要がなければこれで良いです。
(他のモードと比べるとセキュリティの脅威にさらされやすいです)
【内部ネットワーク】
VIrtualBox間のみで通信が可能な内部的なネットワークをさします。
【ホストオンリーアダプター】
外部とは通信ができず、ゲストOSとホストOS間のみ通信ができる閉じたネットワークです。
VIrtualBoxのネットワーク設定で NAT と共によく使用されます。
【汎用ドライバー】
UDPトンネルとVDEを使えるようにするモードです。
【最後に】
NAT接続がうまくいかず、アダプターを追加し、複数のアダプターで接続設定することで、CentOS内でネットワーク接続が可能となりました。
私の場合はブリッジアダプターを追加して解決しました。
私自身色々試しながら、接続方法もより学んでいければと思います。
こちらの記事は備忘録として書いたので、間違い等あればご指摘いただけると幸いです。