1,2,3,4,5の数字だけが残るようにファイルからすべてを削除します。改行は保持する必要があります。ファイルから他のすべてを削除するにはどうすればよいですか?このようなファイルから数字1,2,3,4,5を除くすべてを削除する
1
A
答えて
5
何か:
sed -i 's/[^1-5]//g' file
はここで小規模なテストです:
$ echo $'ab129c\n1d3e5fqq9cm3275\ncn730m271nv05482m1'
ab129c
1d3e5fqq9cm3275
cn730m271nv05482m1
$ echo $'ab129c\n1d3e5fqq9cm3275\ncn730m271nv05482m1'|sed 's/[^1-5]//g'
12
135325
3215421
1
私はそれをやった:
それを画面にダンプします、とあなたが書くことができsed -r 's/[^12345]//g' <file>
ファイルには:
sed -r 's/[^12345]//g' <file> > <new_file>
それともsed
よりも効率的でなければなりません
sed -i -r 's/[^12345]//g' <file>
2
tr
と直接ファイルを編集することができます。コピーicyrockのテスト:
$ echo $'ab129c\n1d3e5fqq9cm3275\ncn730m271nv05482m1' | tr -dc "1-5\n"
12
135325
3215421
tr
への一つの欠点は、しかし、あります:それは(sed -i
が行うような)既存のファイルのインプレース編集を行うことはできません。それがあなたが一時ファイルに書いておきたいものなら、元のファイルと置き換えてください:
tr -dc "1-5\n" <file.txt >tempfile.txt && mv tempfile.txt file.txt
+1
+1はtrに言及しています(私は自分自身をLinuxの高度なユーザと考えていますが、私はそれをどこでも見ることはできません)。 – AoeAoe
関連する問題
- 1. 少数を除くすべてのファイルを削除する
- 2. 文字、数字、アンダースコアを除くすべてを削除するには?
- 3. コーパスからhtmlタグを除くすべてを削除する
- 4. すべてのhtmlタグをSQLファイルから削除/削除
- 5. リストからすべての数字を削除する
- 6. ファイル拡張子(.png)を除くすべてのファイルから_の後にある文字を削除します
- 7. 文字列からN番目の文字をすべて削除/削除
- 8. Python、サブリストからすべての数字を削除
- 9. C#:2つの異なるディレクトリからすべてのファイルを削除するか、全く削除しない
- 10. Pythonでファイルからスペースを除く特殊文字を削除するには?
- 11. ファイルを削除してリストから名前を削除する
- 12. regexで漢字を除くすべてを削除しますか?
- 13. ダッシュ、文字、数字、スペース、およびアンダースコアを除くすべての文字を削除するpreg_replace
- 14. HTML文字列からすべてのスペースを削除する
- 15. テキストファイルからすべてのASCII文字を削除する
- 16. URLからすべてのクエリ文字列を削除する
- 17. コントロールから1つを除くすべてのアイテムを削除する
- 18. mongodb文書から1つを除くすべてのフィールドを削除する
- 19. RegExを使用してJava文字列から - と_を除くすべての句読点を削除する
- 20. PHPの文字列から英数字を除くすべての文字を取り除く
- 21. 複数のファイルから文字列を削除する
- 22. 数字のファイルから行を削除する
- 23. すべてのgitの履歴からファイルを削除する
- 24. ソリューション内のすべてのファイルからコメントを削除する
- 25. 任意のフォルダからすべてのファイルを削除する
- 26. サブフォルダからフォルダのすべてのファイルを削除する
- 27. Golang:|を除くすべての文字を削除します。文字列から
- 28. .gitignoreを除くすべてのgitファイルを削除するには
- 29. .rファイルからすべてのコメントを削除しますか?
- 30. 1つを除くすべてのフォルダを削除する
ここでは '-r'の必要はありません。 –
ええ、私はあなたがそれなしでそれをしたのを見ました。正規表現を完全に使う必要がないほどシンプルであっても、私はいつでも正規表現を使用しています。私はそれが何らかの害を及ぼすとは思わない、ただ必要ではない。 – kingcoyote
'alias sedr =" sed -r "' :)多くの状況で '-r'を使う方がずっと簡単です。 –