Reputation: 97
I am using Linux (centos flavor) and created a file with the following text:
" hello
world
"
Question:
Now, I opened the file in vi editor mode and am able to remove all non blank characters(backspace or delete keys do nothing). But newline characters persist and I get error saying "no previous regular expression".
What should I do to remove all the new lines so that my file is just empty?? I have tried backspace key many times but no effect and I do not want to use cat > filename
to just overwrite the file to make it empty!
Upvotes: 1
Views: 2970
Reputation: 21
open txt with vi
:1
<< move cursor to first of file
d
<< enter delete mode
G
<< move cursor to end of file
It will remove all from cursor( in this case, at first of file ) to end of file
or
open txt with vi
d
N
(Number, As many as you want to delete lines)
Enter
Upvotes: 0
Reputation: 3102
:g
(for global) could help you here.
:g/^$/d
basically says that "globally find any pattern matching ^$
and delete those".
If you think that you might have blanks in those lines, you could say ^\ *$
Upvotes: 2
Reputation: 3663
You can use dd
to delete any lines in vi
editor.
Example: You have a file having 6 lines and you want to delete all 6 lines:
6dd
Upvotes: 2