問題タブ [sed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - コマンド ライン: grep に一致するすべてのファイル名を検索して置換します
grep に一致するすべてのファイルで文字列を検索して置換しようとしています:
grep -n 'foo' *
次の形式で出力が得られます。
foo
grep によって返された各ファイルについて、. に置き換えてファイルを変更したいと思いますbar
。
regex - 正規表現を適切に照合するにはどうすればよいですか?
ldapsearch
次のように出力されたオブジェクトのリストがあります。
これまでのところ、次の正規表現があります。
次のような結果が返されます。
次のような結果を返す正規表現が必要です。
cn=
パターン (およびコンマ) が結果に含まれないようにするには、正規表現で何を変更する必要がありますか?
編集:パターン マッチングを行うために使用sed
し、出力を他のコマンド ライン ユーティリティにパイプします。
linux - シェルスクリプトでファイルに行を追加するにはどうすればよいですか?
既存のCSVファイルにヘッダーの行を追加し、その場で編集したいと思います。これどうやってするの?
そして私は
最初のCSV出力を変更するのは私の手に負えません。
どの標準コマンドでもかまいません。重要なのは、ファイルがその場で編集され、ファイルの先頭に行が挿入されることです。
sed - ファイル内の DOS から UNIX へのパス置換
この種のパスを含むファイルがあります。
そして、次のファイルを取得したいと思います。
一致しないパスは変更しないでください。
固定数のサブディレクトリに対して sed を使用してこれを行う方法は知っていますが、可変数が問題を引き起こしています。実際には、多くのs/x/y/
式を使用する必要があります (最大深度と同じくらい... あまりエレガントではありません)。
とあるかもしれませんが、この種の魔法は私のスキルを超えています。
参考までに、cygwin プラットフォームでいくつかの gcov バイナリ ファイルを修正するには、このトリックが必要です。
私はバイナリファイルを扱っています。したがって、次の種類のデータがある可能性があります。
次のように翻訳する必要があります。
同じ行にあるにもかかわらず、最初の\
ものを翻訳してはなりません。
ただし、このテキストの編集中にファイルをチェックしたところ、.gcno
すべてのパスがゼロで囲まれているように見えるため、以下の回答のほとんどが適合するはずです。
bash - シェルでの検索と置換
私はシェル (bash) スクリプトを作成しており、簡単なタスクを実行する簡単な方法を見つけようとしています。
変数に文字列があります。これが関連しているかどうかはわかりませんが、実際にはこの文字列はテキスト ファイル全体の内容であるため、スペースや改行を含めることができます。
特定の部分文字列の最後の出現を別のものに置き換えたい。おそらく、そのために正規表現を使用できますが、混乱する瞬間が 2 つあります。
- 最初からではなく、最後から一致する必要があります
- スキャンしたい部分文字列は可変ではなく固定です。
shell - sedを使用して、行の最初の「N」文字をどのように出力しますか?
最初のn文字sed
を印刷するためにワンライナーとは何を使用していますか? 私は次のことをしています:
perl - ファイルの最初の行だけを変更するにはどうすればよいですか?
巨大なファイル (~2 GB) の最初の行を変更するために sed で使用できるパターンを知りたいです。sed を優先するのは、Python や Perl スクリプトよりも高速である必要があると考えているからです。
ファイルの構造は次のとおりです。
そして、すべてのフィールドの識別子にスペースが含まれる可能性があるため、次のようにすべてのスペースをアンダースコアに置き換える必要があります。
使用する適切なパターンへのポインタ、または別のスクリプト ソリューションは素晴らしいでしょう。
html - sedでhtmlをフォーマットする
sedを使用して各テーブル関連タグの前にhtmlファイルに改行を挿入するにはどうすればよいですか?
unix - sedはブロックされていますか?
私が言うとき、私はsedがブロックしていないという印象を持っていました:
sed
到着時にデータを処理しますが、
次にsed
ブロックしnetcat
ます。
私は正しいですか?
linux - sed での環境変数の置換
これらのコマンドをスクリプトから実行すると、次のようになります。
それは結構です。
しかし、私が実行すると:
チュートリアルで、シェルから環境変数を置き換えるには停止する必要があることを読み、$varname
直接置換されないように部分を「引用符で囲みます」。これは私が行ったことであり、変数が直前に定義されている場合にのみ機能します。
$var
シェルで定義されている環境変数としてsed を認識させるにはどうすればよいですか?