個人的によく使うLinuxとかのコマンド集です。

grepいろいろ

指定したディレクトリ直下のファイルから特定の文字列を検索する

find '/xxx/yyy/' -maxdepth 1 -type f -print | xargs grep 'moji1'

※単に grep 'moji1' /xxx/yyy/* でもよいが、.env などの隠しファイルがヒットしない

指定したディレクトリからn階層下までのファイルから特定の文字列を検索する

find '/xxx/yyy/' -maxdepth n -type f -print | xargs grep 'moji1'
  • nが2の場合、1階層下までが対象となる
    • grep対象
      • /xxx/yyy/* (直下)
      • /xxx/yyy/*/* (1階層下)
    • 対象外
      • /xxx/yyy/*/*/* (2階層下)
      • /xxx/yyy/*/*/*/* (3階層下)

指定したディレクトリ配下すべてのファイルから特定の文字列を検索する

find '/xxx/yyy/' -type f -print | xargs grep 'moji1'

複数文字列の場合

find '/xxx/yyy/' -type f -print | xargs grep 'moji1¥|moji2'
  • ¥|で繋ぐ。

特定のパスを除外する

find '/xxx/yyy/' -path '*/zzz' -prune -o -type f -print | xargs grep 'moji1'
  • 複数の場合は-path 'target' -prune -oを繰り返し書く。

シンボリックリンクを探す

ll | grep ^l

プロセスをkill

プロセスID(PID)を探す

ps aux | grep {hogehoge}

kill

kill {PID}

viがvimなのか調べる

whichコマンドでエイリアス貼られているか確認

$ which vi
alias vi='vim'
        /usr/local/bin/vim

念の為vimも確認

$ which vim
/usr/local/bin/vim

viで置換

:%s/BEFORE/AFTER/cg
  • %s:ファイル全体
  • g:行全体
  • c:処理確認
    • y:置換する
    • n:置換しない
    • a:ファイル内全て置換
    • q:置換中止

ファイルディスクリプタの上限値を確認

# ソフトリミット(変更可能だが、ハードリミット以上の値を設定することはできない)
$ulimit -Sn
1024

# ハードリミット
$ulimit -Hn
4096

# OS全体で開くことができるファイル数
$cat /proc/sys/fs/file-max
99848

package-lock.json の内容で npm install したい

npm ci

Tags:

Updated: