vi でテキストファイルを編集しよとファイルを開くと、なぜか行末に ^M 文字が表示されることがよくあります。 今回はその原因と vi の置換機能使って、^M 文字を削除する方法についてご紹介します。 Windowsアプリでやるのが嫌なので脱TeraTermするためにLinuxでなんとかしてるんですが、 作業ログをきれいにとるという点においてはTeraTermのほうが上なので苦しんでます。 一応scriptコマンド使ったりtmuxでログを取る方法などがあるんですが どうしても制御文字が入ってしまう… スクリプトは … コマンドやファイル・ディレクト名を補完. 正規表現で、改行コードの表現方法と、改行コードにまつわる置換や削除の操作をまとめました。 「改行コード」の正規表現 「改行」は、特定の文字コードで記述された「制御文字」の1つですので、通常のテキストエディタ上では、他の文字のように文字として表示されることはありません。
Linuxではテキストデータを良く使う。もちろん、それらのテキストデータを置換や削除処理をしたいことがよくあるだろう。このページではシェルスクリプトで効率的に置換・削除を実現する方法についてお伝えした。参考にしていただければと思う。 制御コード表 制御コードの一覧と、簡単な意味の説明です。 JIS X 0211 制御コード表 制御コードには、C0集合とC1集合があります。 C0集合の制御コードは、Ctrlキーを押しながら文字キーを押すことで、入力することができます。 以上、sedを使ってカラーシーケンスを削除する方法でした。 スポンサーリンク 添付ファイル: 03.png 330件 [ 詳細 ] 02.png 381件 [ 詳細 ] 01.png 358件 [ 詳細 ] WSLなどLinux環境を追加したくない、sedのコマンドだけほしい、PowerShellやプロンプトで使えればいいだけという人にお勧めです。 sed for Windows Site. 使用例をいろいろ上げてみる '#'で始まるコメント行を削除する。 sed '/^#/d' source.txt 空行を削除; sed '/^$/d' source.txt 先頭#の行と空行を削除… 最新記事. twitter の api の勉強をちょっとしました (01/19) shell 上で BackSpace キーで文字が削除出来無い場合の対処方法 (12/01) Android のフレームバッファを png 画像に変換するる方法 (08/25) trコマンドは標準入力の文字をすべて別の文字に変換・削除し、標準出力へ書き出します。用途として、大文字を小文字に変換したり、また逆に小文字を大文字に変換することが可能です。 trコマンドは、標準入力から読み込んだ文字列を変換・削除し、標準出力に表示するコマンドです。 trコマンド 書式 tr 文字列1 オプション -c文字列1で指定した文字列を文字列2に置換します。 -d文字列1で指定した文字列を削除します。 Linuxで通常処理で削除できないファイルを削除する ファイルを削除するにはrmコマンドを実行します。 しかし、名称がハイフン「-」で始まるファイルや、スペース、 メタキャラクタ(メタ文字)が含まれるファイルは、 シェルが正しくファイルを認識出来ないため削除できません。 開始文字だけでなく, 任意の文字で出力を再開 [-]ixoff 開始および停止文字の送信を可能に [-]ixon XON/XOFF フロー制御を可能に [-]parmrk パリティーエラーをマーク (255-0 文字のシーケンスで) [-]tandem [-]ixoff と同じ 出力設定: * bsN バックスペースの遅延スタイル. としても削除することができません。 というところでつまづいたので、以降で「^M」を削除する方法を紹介します。 4.sedで「^M」を削除する. はじめに コマンドの操作ミスやスクリプト出力の文字化けなどで特殊文字を含む名前でファイルができてしまい、単にrmコマンドでは削除できない時の削除方法。 いざという時のためにメモ。 実験用のファイル temp $ ls "ccc.txt -bbb.txt aaa.txt temp $ 他にもありえますが用意するのがめんど… 文字列から部分文字列を取り出すときは、位置を指定した抽出方法か、パターンを指定による不要部分削除の方法を利用すると良いです。パターン指定には、前方一致と後方一致があるので使い分けると便利です。 位置指定 コマンドラインには強力な補完機能が用意されています。補完機能とは入力した文字列に続くコマンドやファイル・ディレクトリなどのリストを表示する機能のこ … ESCは文字化け(印字できない)かもしれませんが。 ちなみにバックスペースボタンを押した時も(文字削除ではなく)バックスペースとしてログに載りますね。 では最初に戻って、文字の色を変える制御シーケンスの例です。 printf '\033[31mTEST\033[m\n' sedで「^M」を削除するには次のようにします。 sed … 川田剛史(Kawada Tsuyoshi) の Linux 作業メモ.