まず、vagrantにログインして、適当にディレクトリを作ります。
[vagrant@localhost ~]$ mkdir grep [vagrant@localhost ~]$ cd grep [vagrant@localhost grep]$ git version git version 2.2.1
git hubから適当に機械学習のコードをgit cloneしてきます。
[vagrant@localhost grep]$ git clone https://github.com/nyk510/machine-learning.git Cloning into 'machine-learning'... remote: Counting objects: 112, done. Receiving objects: 100% (112/112), 2.49 MiB | 673.00 KiB/s, done. remote: Total 112 (delta 0), reused 0 (delta 0), pack-reused 112 Resolving deltas: 100% (55/55), done. [vagrant@localhost grep]$ ls machine-learning [vagrant@localhost machine-learning]$ ls black_scholes.py figures gibbs_sampling.py prml readme.md requirements.txt
では、適当にblack_scholes.pyでSIGMAが使われている箇所を抜き出しています。
[vagrant@localhost machine-learning]$ grep SIGMA black_scholes.py SIGMA = 0.30 d = -(np.math.log(S_0 / K) + ((r - SIGMA * SIGMA / 2.) * T)) / (SIGMA * np.power(T, 0.5)) V_c = S_0 * stats.norm.cdf(-d + SIGMA * np.power(T, .5)) - K * np.exp(-r * T) * stats.norm.cdf(-d) V_p = K * np.exp(-r * (T - t)) * stats.norm.cdf(d) - S_0 * stats.norm.cdf(d - SIGMA * np.power(T - t, 0.5)) s_j_t = S_0 * np.exp((r - SIGMA * SIGMA / 2.) * T + SIGMA * rand_n * np.power(T, 0.5)) s_j_t = S_0 * np.exp((r - SIGMA * SIGMA / 2.) * T + SIGMA * rand_n * np.power(T, 0.5))
行番号をつけたい時は grepに -nをつける
[vagrant@localhost machine-learning]$ grep -n SIGMA black_scholes.py 18:SIGMA = 0.30 22:d = -(np.math.log(S_0 / K) + ((r - SIGMA * SIGMA / 2.) * T)) / (SIGMA * np.po wer(T, 0.5)) 23:V_c = S_0 * stats.norm.cdf(-d + SIGMA * np.power(T, .5)) - K * np.exp(-r * T) * stats.norm.cdf(-d) 24:V_p = K * np.exp(-r * (T - t)) * stats.norm.cdf(d) - S_0 * stats.norm.cdf(d - SIGMA * np.power(T - t, 0.5)) 29: s_j_t = S_0 * np.exp((r - SIGMA * SIGMA / 2.) * T + SIGMA * rand_n * np.p ower(T, 0.5)) 35: s_j_t = S_0 * np.exp((r - SIGMA * SIGMA / 2.) * T + SIGMA * rand_n * np.p ower(T, 0.5))
ファイル名のみ
[vagrant@localhost machine-learning]$ grep -l SIGMA * black_scholes.py grep: figures: ディレクトリです grep: prml: ディレクトリです
ファイル名と行番号は”-rn”
[vagrant@localhost machine-learning]$ grep -rn import *.py black_scholes.py:9:import numpy as np black_scholes.py:10:import matplotlib.pyplot as plt black_scholes.py:11:import scipy.stats as stats gibbs_sampling.py:7:import numpy as np gibbs_sampling.py:8:import matplotlib.pyplot as plt gibbs_sampling.py:9:import scipy.stats as stats
あーこれこれ、やりたかったの。