sbib improve and rg bool
This commit is contained in:
24
s
Executable file
24
s
Executable file
@@ -0,0 +1,24 @@
|
||||
#! /usr/bin/python
|
||||
# adapted from https://stackoverflow.com/questions/59052703/grep-or-ripgrep-how-to-find-only-files-that-match-multiple-patterns-not-only-o
|
||||
|
||||
import sys
|
||||
import subprocess
|
||||
from itertools import permutations
|
||||
|
||||
usage = """
|
||||
Search with multiple keywords across files within current and subdirs using ripgrep. Provides boolean AND type search.
|
||||
|
||||
Usage: s keyword1 keyword2
|
||||
e.g. s cerebral cetacean sand | f
|
||||
"""
|
||||
|
||||
# Check that the user puts in an argument, else print the usage variable, then quit.
|
||||
if len(sys.argv)< 2:
|
||||
print (usage)
|
||||
sys.exit(0)
|
||||
|
||||
rgarg = '|'.join(('.*'.join(x) for x in permutations(sys.argv[1:])))
|
||||
cmd = ['rg', '-lUi', '--multiline-dotall', rgarg, '.']
|
||||
# print(' '.join(cmd))
|
||||
proc = subprocess.run(cmd, capture_output=True)
|
||||
sys.stdout.write(proc.stdout.decode('utf-8'))
|
||||
Reference in New Issue
Block a user