Tools and things that make my life easier - y'all might like them too
nocrs
Remove carriage returns from files. This is especially useful for files created on Windoze that have carriage returns - one of the worst things about Windoze, in my opinion.
Syntax: nocrs [-v] file ...
| Option | Description | Default |
| —— | ———– | ——- |
| -v
, --verbose
| Increase debugging messages. More instance of this option produce more debugging. | Debugging is not enabled |
Each file to process is specified as an argument on the command line.
$ echo -e 'This is a test\r' > test
$ od -ctx1 test
0000000 T h i s i s a t e s t \r \n
54 68 69 73 20 69 73 20 61 20 74 65 73 74 0d 0a
0000020
$ nocrs test
test
$ od -ctx1 test
0000000 T h i s i s a t e s t \n
54 68 69 73 20 69 73 20 61 20 74 65 73 74 0a
0000017
$
$ echo -e 'This is a test\r' > test
$ nocrs -v test
2019-02-17 10:23:56,404 INFO /home/mrbruno/bin/nocrs:45 processing test
2019-02-17 10:23:56,404 INFO /home/mrbruno/bin/nocrs:25 Backing up 'test' to '.test-20190217102356'
test
$
cp -pv
to preverse the file in case there are issuesA great example of using this tool is Python scripts. Python on Unix will not be able to process the script!
$ cat test.py
#! /usr/bin/env python
print "Hello, Python world"
$ od -ctx1 test.py
0000000 # ! / u s r / b i n / e n v
23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20
0000020 p y t h o n \r \n p r i n t " H
70 79 74 68 6f 6e 0d 0a 70 72 69 6e 74 20 22 48
0000040 e l l o , P y t h o n w o r
65 6c 6c 6f 2c 20 50 79 74 68 6f 6e 20 77 6f 72
0000060 l d " \r \n
6c 64 22 0d 0a
0000065
$ chmod +x test.py
$ ./test.py
/usr/bin/env: ‘python\r’: No such file or directory
$ python test.py
Hello, Python world
$