毎回忘れて検索している気がするので、探しやすいようにメモしておきます。
見辛いCSVを整形してターミナルで閲覧
# 他にも色々あるけどインストールが楽 (go get github.com/Konboi/csviewer)
csviewer -p test.csv
cat test.csv | csviewer
見辛いHTMLを整形してターミナルで閲覧
# xmllintは色々面倒なのでtidyを利用 (apt-get install tidy)
tidy -i -utf8 < test.html | vim -
見辛いJSONを整形してターミナルで閲覧
# apt-get install jq
jq -C . test.json | less -R
文字列を含む箇所を前後5文字を含めて抽出
# 改行のない最小化ファイルの検索に便利
grep -o -E '.{,5}foobar.{,5}' test.txt
ディレクトリの使用量を見やすい形で表示
du -sh dir
時刻/日付をUNIX TIMEに変換
date +%s # 現在時刻
date +%s --date `date -Idate` # 今日の日付
date +%s --date 2017-06-01 # 指定した日付
date +%s --date "2017-06-01 12:00" # 指定した時刻
UNIX TIMEを時刻に変換
date --date @1496242800
プロセスの表示 (ps)
# chromeなどの表示がうざいので折り返しなしで表示
ps aux --sort -pcpu | less -S # CPU使用量順
ps aux --sort -rss | less -S # メモリ使用順
プロセスの表示 (top)
top # まずは平凡に起動
# Shift+PキーでCPU使用量順
# Shift+Mキーでメモリ使用順順
# Shift+Tキーで実行時間順
プロセスをcgroupのtreeで表示
systemd-cgls
プロセスの停止
ps aux | fzf | awk '{ print \$2 }' | xargs kill -9
ps aux | fzf --preview 'echo {}' --preview-window=bottom:wrap | awk '{ print \$2 }' | xargs kill -9 # おすすめ
OSのバージョン表示
uname -a # カーネルのバージョン
cat /etc/lsb-release # Ubuntuのバージョン
cat /etc/debian_version # Debianのバージョン
ユーザ設定を読み込んでコマンドを実行
bash -lc 'command' # ~/.bash_profileを読み込んで実行
bash -ic 'command' # ~/.bashrcを読み込んで実行
サーバ上のXを利用 (SSH上で画像を開く等)
# サーバ側でSSHのX11 Forwardingを有効にする事前準備は必要
ssh -XC user@host # X11転送を有効にしてSSHクライアントを起動
# display image.png # ログイン後はXが必要なコマンドも使える
気軽にHTTPサーバを立てる
python -m SimpleHTTPServer [port] # python2
python -m http.server [port] # python3
ruby -run -e httpd . -p [port] # ruby1.9.3-
ユーティリティコマンド
bc # 電卓
cal # カレンダー
curl wttr.in/tokyo # 天気
time hoge # hogeの実行時間を計測
関連付けに従って開く
gnome-open https://www.google.co.jp/
xdg-open test.txt
文字化けするzipファイルを展開
unzip -O cp932 test.zip
unzipで複数ファイルを一括展開
unzip '*.zip' # シングルコーテーションなどで囲うのが重要
unzip \*.zip # これでも動くけど上のほうが覚えやすいかな?
最近は使われない圧縮形式の展開
# x付ければ大抵なんとかなる
# 最近はatool (apt-get install atool) を使ったほうが楽かも
lha x foo.lzh # LZH (apt-get install lha)
unrar x foo.rar # RAR (apt-get install unrar)
コマンド終了時にメール送信
# メールコマンドのインストールと設定が必要
# 最近はTwitterに通知するスクリプトを作ったほうが気楽かも知れない
command && echo [content] | mail -s [subject] [to@example.com]
Git関連
git config --global core.quotepath false # 日本語ファイルの文字化け回避
エイリアスに登録
alias ps-cpu="ps aux --sort -pcpu | less -S"
alias ps-mem="ps aux --sort -rss | less -S"
alias osversion="cat /etc/lsb-release"
alias unixtime="date +%s"
alias unixdate="date +%s --date `date -Idate`"
alias weather="curl wttr.in/tokyo"
alias pskill="ps aux | fzf --preview 'echo {}' --preview-window=bottom:wrap | awk '{ print \$2 }' | xargs kill -9"
頻繁に使うものや特に忘れやすいものはエイリアスに登録しておくと楽です。
~/.bashrcに上記を登録しても良いかも知れません。
0 件のコメント:
コメントを投稿