ファイル操作コマンド
ls: ファイルやディレクトリの一覧を表示する。cd: カレントディレクトリを変更する。mkdir: ディレクトリを作成する。cp: ファイルをコピーする。mv: ファイルを移動する。rm: ファイルを削除する。
権限を操作するコマンド
ls -l:ファイルとフォルダの権限を確認する。
$ ls -l
total 4
drwxr-xr-x 2 user user 4096 Aug 9 14:23 dir1
-rw-r--r-- 1 user user 0 Aug 9 14:23 file1.txt
chmod:ファイルやフォルダの権限を変更する。
例えば、以下のようにchmodコマンドを使用して、file1.txtのパーミッションを変更することができます。
$ chmod 644 file1.txt
$ chmod 755 dir1
以下のコマンドを使用して、ディレクトリ内のすべてのファイルとサブディレクトリのパーミッションを再帰的に変更できます。
chmod -R <パーミッション> <ディレクトリ>
プロセス管理コマンド
ps: プロセスの一覧を表示する。kill: プロセスを終了する。top: 実行中のプロセスのCPU使用率やメモリ使用量を表示する。
ネットワークコマンド
ping: ネットワーク接続の確認を行う。ifconfig: ネットワークインタフェースの設定を表示する。netstat: ネットワーク接続状況を表示する。
ユーザーアカウント管理コマンド
useradd: 新しいユーザーアカウントを作成する。userdel: ユーザーアカウントを削除する。passwd: ユーザーアカウントのパスワードを変更する。id: ユーザーのUID(ユーザーID)やグループIDを表示する。whoami: 現在ログインしているユーザー名を表示する。w: 現在のシステムにログインしているユーザーの情報を表示する。usermod: ユーザーアカウントの属性を変更する。管理者権限を与える場合は、usermod -aG sudo usernameを実行する。- 管理者権限を与える場合は、
usermod -aG sudo usernameを実行してください。
グループ管理コマンド
groupadd: 新しいグループを作成する。groupdel: グループを削除する。groupmod: グループの属性を変更する。groups: ユーザーが所属しているグループを表示する。
一覧を表示する
cat /etc/passwd: ユーザーの一覧を表示cat /etc/group: グループの一覧を表示
SSHでアップロード・ダウンロードする
- ファイルのダウンロード(ポート番号9999の場合)
scp -P 9999 username@remote:/path/to/remote/file /path/to/local/directory
- フォルダのダウンロード(ポート番号9999の場合)
scp -P 9999 -r username@remote:/path/to/remote/directory /path/to/local/directory
- 差分のみダウンロードする
rsync -avz --delete -e "ssh -p 22" user@remote:/path/to/remote/directory /path/to/local/directory
rsync -avz --delete --exclude '*.log' --exclude 'folder*' user@remote:/path/to/remote/directory /path/to/local/directory
| オプション | 説明 |
|---|---|
| -a | アーカイブモード。ファイルのモード、タイムスタンプ、所有者、グループ、ACL、xattrなどの情報を保持し、再帰的に同期します。 |
| -v | 冗長モード。同期の詳細を表示します。 |
| -z | 圧縮転送。データを圧縮して転送し、転送速度を向上させます。 |
| —delete | 同期先に存在しないファイルを削除します。 |
| —exclude | 同期対象から除外するファイルやディレクトリを指定します。 |
つまり、-avzオプションは、ファイルのモード、タイムスタンプ、所有者、グループ、ACL、xattrなどの情報を保持し、再帰的に同期すると同時に、同期の詳細を表示して、データを圧縮して転送することで、転送速度を向上させるオプションです。
シンボリックリンクを貼る
ln -s /path/to/original /path/to/link- リンクを削除するときは、
unlinkを使うこと。rmを使うと元のファイルも消してしまう。
