-
Notifications
You must be signed in to change notification settings - Fork 3
/
grep
54 lines (38 loc) · 1.71 KB
/
grep
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Basic:
grep pattern file
# case nonsensitive research:
grep -i pattern file
# Recursively grep for string <pattern> in folder:
grep -R pattern folder
# Find files containing text
grep -Rl {search} {path}
# Find files containing text case insensitive
grep -Rli {search} {path}
# Getting pattern from file (one by line):
grep -f pattern_file file
# Find lines NOT containing pattern
grep -v pattern file
# You can grep with regular expressions
grep "^00" file #Match lines starting with 00
grep -E "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}" file #Find IP add
# Find all files who contain {pattern} in the directory {directory}.
# This will show: "file:line my research"
grep -rnw 'directory' -e "pattern"
# Exclude grep from your grepped output of ps.
# Add [] to the first letter. Ex: sshd -> [s]shd
ps aux | grep '[h]ttpd'
# Colour in red {bash} and keep all other lines
ps aux | grep -E --color 'bash|$'
# -B, --before-context=NUM print NUM lines of leading context
# -A, --after-context=NUM print NUM lines of trailing context
# -C, --context=NUM print NUM lines of output context
grep -A 10 -B 10 pattern content
# check all manifest have revision
cat default.xml | grep -v "revision" | grep -v "</" | grep -v "linkfile" | grep -v "manifest" | grep -v "copyfile"
# check manifest have special branch, not sha1 or tag
cat default.xml | grep "revision" | grep -v default| grep -v -E "[0-9a-z]{21}" | grep -v "refs/tags/"
# check manifest have branch out or use branch
cat default.xml | grep -v "refs" | grep -v -E "[0-9a-z]{40}" | grep -v '<linkfile'| grep -v '<copyfile' | grep -v " </project>" | grep project
# fix Binary file (standard input) matches
cat xxxx | grep -a xxxx
# office doc excel grep