File tree Expand file tree Collapse file tree
implement-shell-tools/cat Expand file tree Collapse file tree Original file line number Diff line number Diff line change 88)
99
1010parser .add_argument ("-n" , "--number" , action = "store_true" , help = "Number all output lines" )
11+ parser .add_argument ("-b" , "--number-nonblank" , action = "store_true" , help = "Number non-empty lines only" )
1112parser .add_argument ("path" , help = "File to read" )
1213
1314args = parser .parse_args ()
1415
15-
1616# Read the file
1717with open (args .path , "r" ) as f :
1818 content = f .read ()
2929 numbered_lines .append (numbered_line )
3030
3131 print ("\n " .join (numbered_lines ))
32+
33+ elif args .number_nonblank :
34+ lines = content .split ("\n " )
35+ numbered_lines = []
36+ line_number = 0
37+
38+ for line in lines :
39+ if line .strip () == "" : # Empty line
40+ numbered_lines .append (line ) # Don't number it
41+ else : # Non-empty line
42+ line_number = line_number + 1
43+ numbered_line = f"{ line_number :6} \t { line } "
44+ numbered_lines .append (numbered_line )
45+
46+ print ("\n " .join (numbered_lines ))
47+
3248else :
3349 print (content )
You can’t perform that action at this time.
0 commit comments