restored the .format() string ops, so this works with older python boards
This commit is contained in:
16
tf.py
16
tf.py
@@ -33,7 +33,7 @@ def cp(src,dest):
|
||||
|
||||
def cat(filename, first=1, last=1000000, numbers=False, title=True):
|
||||
if title:
|
||||
print(f"===={filename}====")
|
||||
print("===={}====".format(filename))
|
||||
transfer(filename,sys.stdout,first,last,numbers=numbers)
|
||||
|
||||
def grep(filename, pattern, numbers=False):
|
||||
@@ -56,7 +56,7 @@ def sed(filename, sed_cmd, bak_ext=".bak"):
|
||||
|
||||
if op in "aid" and e-s==1000000:
|
||||
raise ValueError("sed(a/i/d) should have a line number")
|
||||
#print(f"sed command parser of <{op}> returned {cmd} {a.group(1)} {a.group(3)}")
|
||||
#print("sed command parser of <{}> returned {} {} {}".format(op, cmd, a.group(1), a.group(3)))
|
||||
if op in "sxX":
|
||||
if len(args)<2 or args[0] in "\^$()[]":
|
||||
raise ValueError("invalid sed argument: "+op+args)
|
||||
@@ -94,7 +94,7 @@ def sed(filename, sed_cmd, bak_ext=".bak"):
|
||||
h+=1
|
||||
continue # delete line
|
||||
if op=='i' and m:
|
||||
#print(f"insert a line before {i} <{extra}>")
|
||||
#print("insert a line before {} <{}>".format(i,extra))
|
||||
g.write(args)
|
||||
h+=1
|
||||
if op in "aids":
|
||||
@@ -103,7 +103,7 @@ def sed(filename, sed_cmd, bak_ext=".bak"):
|
||||
g.write(lin)
|
||||
h+=1
|
||||
if op=='a' and m:
|
||||
#print(f"append a line after {i} <{extra}>")
|
||||
#print("append a line after {} <{}>".format(i,extra))
|
||||
g.write(args)
|
||||
h+=1
|
||||
#f.write("--file modifed by sed()--\n")
|
||||
@@ -112,9 +112,9 @@ def sed(filename, sed_cmd, bak_ext=".bak"):
|
||||
def _dir(d='.'):
|
||||
for f in os.listdir(d):
|
||||
s=os.stat(d+'/'+f)
|
||||
print(f"{'d' if (s[0] & 0x4000) else '-'}rwx all {s[6]:9d} {f}")
|
||||
print("{}rwx all {:9d} {}".format('d' if (s[0] & 0x4000) else '-',s[6],f ))
|
||||
s=os.statvfs('/')
|
||||
print(f"disk size:{s[0]*s[2]//1024:8d} KB disk free: {s[0]*s[3]//1024} KB")
|
||||
print("disk size:{:8d} KB disk free: {} KB".format(s[0]*s[2]//1024,s[0]*s[3]//1024))
|
||||
|
||||
'''-----cut here if you only need the functions-----'''
|
||||
def ext_cmd(a):
|
||||
@@ -132,7 +132,7 @@ def _help():
|
||||
print(" cat/list [-n] [-l <n>,<m>] <file>")
|
||||
print(" grep <pattern> <file>")
|
||||
print(" sed <pattern> <file>")
|
||||
print(" pattern is <line-range><op><extra> e.g'a/search/replace/', 'x!TODO:!', '43,49d', '8itext'")
|
||||
print(" pattern is <line-range><op><extra> eg: 's/search/replace/' 'x!TODO:!' '43,49d' '8itext'")
|
||||
print(" patterns with spaces require '-quotes\tsed ops are one of s/d/i/a/x/X")
|
||||
print(" sed cannot cross line boundaries\t\tsed s/x/X-patterns: non-/ delimiters are ok")
|
||||
print("file names must NOT have embedded spaces\toptions must be early on the command line")
|
||||
@@ -188,7 +188,7 @@ def main():
|
||||
else:
|
||||
r=sed(p[1],p[0])
|
||||
if r:
|
||||
print(f"Lines processed: {r[0]} Lines modifed: {r[1]}")
|
||||
print("Lines processed: {} Lines modifed: {}".format(*r))
|
||||
except (ValueError, OSError) as e:
|
||||
print(e)
|
||||
except RuntimeError:
|
||||
|
||||
Reference in New Issue
Block a user