芽萌丸プログラミング部 @programming
@programming
2020/10/28 9:14 更新✏

Linuxコマンドメモ

個人的に忘れやすいけどよく使うLinuxコマンドのメモです。(適時更新)

目次

圧縮と解凍

zipコマンド版

zip圧縮:

# zip圧縮:
$ zip -r mydir.zip mydir/
# またはパスワード付きでzip圧縮:
$ zip -r -e mydir.zip mydir/
Enter password: ここでパスワードを入力
Verify password: ここでパスワードを再入力

zipの中身を確認:

# zip圧縮ファイルの中身を確認:
$ unzip -l mydir.zip

zip解凍:

# zip圧縮ファイルを解凍:
$ unzip mydir.zip

tarコマンド版

tar.gz圧縮:

# tarでgzip圧縮 (czオプション):
$ tar czfv mydir.tar.gz mydir/

tar.gzの中身を確認:

# gzip圧縮ファイルの中身を確認 (tzオプション):
$ tar tzfv mydir.tar.gz

tar.gzを解凍:

# gzip圧縮ファイルを解凍 (xzオプション):
$ tar xzfv mydir.tar.gz

NOTE: tarコマンドは複数のファイルを一つにまとめるコマンドです。gzipコマンドではフォルダを圧縮できないため、tarコマンドに cz オプションを付けることで、フォルダを一旦一つのファイルにまとめてからgzip圧縮を行っています。

gzip圧縮されたテキストファイルを直接読む

$ zcat ./access.log.1.gz | less

リモートコピー

リモートへアップロード

ローカルのhoge.txtをsshでリモートサーバへアップロード:

$ scp -i ~/.ssh/secret.key hoge.txt user@remotehost:/tmp/hoge.txt
# もしくは:
$ rsync -avz --progress -e 'ssh -i ~/.ssh/secret.key' ./hoge.txt user@remotehost:/tmp/hoge.txt

リモートからダウンロード

$ scp -i ~/.ssh/secret.key user@remotehost:/tmp/hoge.txt ./hoge.txt
# もしくは:
$ rsync -avz --append-verify --progress -e 'ssh -i ~/.ssh/secret.key' user@remotehost:/tmp/hoge.txt ./hoge.txt

TIP: rsyncコマンドに--append-verifyオプションを付けることで、万が一途中で通信が途切れてしまっても同じコマンドを叩けば途中からダウンロードを再開できます。

Bluetoothでファイル送信

ターミナルからBluetooth経由でファイル送信を参照。

ディスク容量

ディスクの空き容量等を確認

$ df -Th

Filesystem     Type      Size  Used Avail Use% Mounted on
udev           devtmpfs  3.8G     0  3.8G   0% /dev
tmpfs          tmpfs     778M  9.3M  769M   2% /run
/dev/xxxxxxxp1 ext4      230G  151G   68G  70% /
...

特定ディレクトリのディスク使用サイズを確認

$ du -sch ~/ダウンロード/

15G /home/user/ダウンロード/
15G 合計

ディスク使用サイズの大きいフォルダTOP5を表示

カレントディレクトリ直下でディスク使用サイズの大きいフォルダTOP5を表示:

$  du -hs * | sort -rh | head -5

14G var
5.8G  home
1.5G  usr
926M  lib
156M  boot

ディスク使用サイズの大きいファイルorフォルダTOP5を表示

カレントディレクトリ配下でディスク使用サイズの大きいファイルorフォルダTOP5を表示:

$ find -type f -exec du -Sh {} + | sort -rh | head -n 5

4.7G  ./most/large/folder
45M ./hoge/foo.txt
44M ./bar
27M ./baz/aaa.txt
17M ./baz/bbb.txt

Linux

芽萌丸プログラミング部 @programming
芽萌丸プログラミング部@programming
プログラミング関連アカウント。Web標準技術を中心に書いていきます。フロントエンドからサーバサイドまで JavaScript だけで済ませたい人たちの集いです。記事は主に @TanakaSoftwareLab が担当。
オススメ:Zattoyomiで時事ネタチェックの時間節約!