シェルスクリプトで、英数字で始まり、後ろの方に日本語が含まれているファイル名が各行に書かれたテキストファイルからファイルパスの英数字部分のみを取り出したいです。
日本語が出てきた部分から後ろは行末まで、拡張子も含め、すべて切り捨てたいです。
英数字部分にスペースなど特殊文字があれば、それも除外したいです。
ファイルに書かれたパスはすべて /DIR/ファイル名 となっていて、親ディレクトリは同じです。
/DIRの前にはパスに関係のない英数字・日本語が書かれています。これらは切り捨てます。
スペース・タブ・カンマ・ドット・非ascii文字[\x00-\x7F]を含まないとして、次の表現をしましたが何も返ってきませんでした。
grep -Po "/DIR/[^ \t,.\x00-\x7F]+"
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/01/10 22:47