commandlinefu.comで見つけた便利・面白Linuxコマンド使用例
- commandlinefu.com
- コマンド使用例
- ^foo^bar
- mount | column -t
- time read (ctrl-d to stop)
- echo "You can simulate on-screen typing just like in the movies" | pv -qL 10
- mv filename.{old,new}
- diff <(sort file1) <(sort file2)
- !*
- !:-
- fc
- date -d@1234567890
- ps awwfux | less -S
- bind -P
- mkdir -p work/{d1,d2}/{src,bin,bak}
- showkey -a
- ccze
- grep . filename > newfilename
- grep -Fx -f file1 file2
- grep . *
- kill -9 $$
- tail -f file | while read; do echo "$(date +%T.%N) $REPLY"; done
- set -o vi
commandlinefu.com
commandlinefu.comという便利なコマンド使用例(ワンライナー)を共有するサイトがあったので気になったコマンドを試してみる。
サイトではユーザが投票できるようになっていてsoted byをvotesにすると人気順に閲覧可能。最近でもコマンド使用例が投稿されているが2009年、2010年頃に投稿されたものが人気なのでその頃に話題だったのだろうか。
Linux 現在の環境で利用可能なコマンド一覧をcompgenで表示
- compgen
- compgen -c(外部コマンド)
- compgen -a(エイリアス)
- compgen -b(組み込みコマンド)
- compgen -k(キーワード)
- compgen -A function(関数)
- compgen -A function -abck(上記全部)
- zshの場合
compgen
現在の環境で利用可能なコマンド一覧を表示する方法は、Stack Overflowによるとbash組み込みコマンドのcompgen
を使うとよいとのこと(TAB
を2回押して補完候補を全部出す方法はパイプが使えないし)。
man compgen
によると補完で使われているコマンドらしい。
compgen [option] [word]
option に従って、word にマッチする補完候補のリストを生成します。 オプションには complete 組み込みコマンドと同じものが指定できますが、 -p と -r は指定できません。 マッチのリストは標準出力に出力されます。 -F や -C オプションを使用したときは、 プログラム補完機能によって設定された様々なシェル変数は、 利用可能であっても有用な値を持ちません。
マッチのリストは、同じフラグによる補完仕様で プログラム補完のコードが直接生成したかのように 生成されます。 word が指定されると、word にマッチする補完だけが表示されます。
戻り値は、 無効なオプションが指定された場合やマッチが生成されなかった場合以外は 真になります。
Pythonメモ : 「sh」パッケージでコマンド実行
- sh
- インストール
- 基本的な使い方
- 引数を渡す
- パイプ
- リダイレクト
- 終了コードと例外
- バックグラウンドプロセス
- サブコマンド
- その他
sh
Pythonでコマンドを実行する場合は以下のようにsubprocess
を使う方法があるが、sh
パッケージというものがあったので試してみる(標準ライブラリではないので使う際は注意)。
import subprocess subprocess.run(["ls", "-l"]) # runはPython 3.5から
>>> from sh import ls >>> print(ls()) CHANGELOG.md README.rst logo-big.png setup.cfg test.py LICENSE.txt __pycache__ requirements-dev.txt setup.py MANIFEST.in logo-230.png requirements-docs.txt sh.py
Pythonメモ : Python 3の基本をマインドマップで学ぶ
Python3 in one pic
GitHubを眺めていたらPython 3の基本を一枚のマインドマップにまとめていたリポジトリを見つけた(これがわかりやすいかは人によるかもしれないが)。
拡大、縮小、折り畳みなどができるオンラインバージョンやPNG形式にしたものがある。また、IPython Notebookバージョンもあるようだ。