便利なunixコマンドまとめ

オライリーの入門unix を読んでみて、便利と思ったコマンドのメモ。

$ ls -a   ファイルの一覧( aオプションで隠しフォルダも表示)

.DS_Store               .ssh
.Trash                  .subversion
.atom                   Applications
.bash_history               Desktop
.bash_profile
$ ls -al ( lオプションを追加することで、詳細情報も表示可能)

total 96
drwxr-xr-x+ 32 user  staff   1088 11 21 17:10 .
drwxr-xr-x   5 root             admin    170 11 20 12:51 ..
-r--------   1 user  staff      7 11 14 14:43 .CFUserTextEncoding
-rw-r--r--@  1 user staff  14340 11 22 16:15 .DS_Store
drwx------   2 user  staff     68 11 20 20:56 .Trash
drwxr-xr-x  15 user  staff    510 11 19 10:13 .atom
・・・

ワイルドカード

「?」は任意の1文字に一致する. 例えば 「h?p」ならhop, hip, hap等で一致する。しかし、hpやhelpには一致しない。

$ ls file?.rb

file1.rb file1.rb file3.rb file4.rb file5.rb file6.rb と返してくれる
 

「*(アスタリスク記号)」はどんな文字の並びにも一致する

$ ls file[4-6]*

この場合 . 以降が*で表されるため file4.rb file5.rb file6.rbと帰ってくる

ファイル内容の閲覧

ターミナルでファイルの中身を確認したいときはcatを使っていたが、分量が長いファイルを参照したいときにはlessを使うとスクロールができるため便利。

ファイル内の文字を置き換えるtrコマンド

$ cat todo.txt

1. Wake up
2. eat food
3. read newspaper

$ tr '[aiueo]' '[xxxxx]' < todo.txt

1. Wxkx xp
2. xxt fxxd
3. rxxd nxwspxpxr

[aiueo] の部分を[xxxxx]として置き換えている!


小文字を大文字に変えることも可能!

$ tr  "[:lower:]" "[:upper:]" < todo.txt

1. WXKT XP
2. XXT FXXD
3. RXXD NXWSPXPXPXR

grep

ファイルや標準入力から正規表現でマッチする行を探し出すコマンド。

$ ls

.                   .python_history
..                  .rbenv
.CFUserTextEncoding         .ssh
.DS_Store               .subversion
.Trash                  .viminfo
.atom                   Applications
.bash_history               Desktop
.bash_profile               Documents
.bash_profile.pysave    Downloads
.bundle                 Library
.cache                  Movies
.codeintel              Music
.config                 Pictures
.gem                    Public
.gitconfig              
.local                  iCloud Drive(アーカイブ)
.netrc


grepで"D"にマッチするものでフィルタリング
$ ls -a | grep "D"
.DS_Store
Desktop
Documents
Downloads
iCloud Drive(アーカイブ)

grepうまく使いこなしたいです....

コマンド使いこなして生産性あげていきたいです.... 2017年の目標はvimを使いこなせるようになる!