私は、各単語がlinuxを使ってファイルに何回出現するかを調べようとしています。linuxでsedを使って単語の終わりと先頭から句読点を削除するには?
以下のコードを使用して、ファイルから各単語を改行しました。
sed -i 's/ /\n/g' books2
私は今、いくつかの単語は句読点が含まれているとして、空白で単語の開始と終了を交換しようとしています。私は現在、次のコードを使用してこれを行っていますが、動作していないようです。私がこれを持っていれば、すべての単語を数えるコマンドを実行し、すべての単語にカウントのリストを返すことができます。誰かが句読点を削除する方法について私を修正することはできますか?
sed -i 's/\([^[:alpha:]]\)$//' books2 #this is my attempt to remove the punctuality at the end of the word
sed -i 's/\([^[:alpha:]]\)^.*//' books2 #this is my attempt to remove the punctuality from the front.
上記のいずれかのコード行を実行すると、ファイルが空になります。どうしてこれなの?
sed 's/^[^[:alpha:]]\+//' books2
これは、行の先頭にすべての非アルファベット文字を削除します:あなたは、次のコマンドを使用することができます行の先頭から句読点を削除するには
[GNU awk](https://www.gnu.org/software/gawk/)の詳細については、 –