タグ付けされた質問 「text-processing」

プログラム、スクリプトなどによるテキストの操作または検査

4
3文字おきに文字を追加するsedワンライナーを作成するにはどうすればよいですか?
だから、私はこのような文字列を持っています: AUGGCCAUGGCGCCCAGAACUGAGAUCAAUAGUACCCGUAUUAACGGGUGA そして、文字列を「+」記号で区切られた3文字のチャンクに分割したいと思います。 AUG+GCC+AUG+GCG+CCC+AGA+ACU+GAG+AUC+AAU+AGU+ACC+CGU+AUU+AAC+GGG+UGA そして、私は私の良き友人とそれをしたいですsed。 私は試した cat codons | sed -r 's/([A-Z]\{3\})/\1\+/g' ...成功しませんでした。 どのsedコマンドを使用できますか?

3
ミリ秒までの2つのタイムスタンプの違いを見つける方法は?
シェルスクリプトは初めてです。私のスクリプトの中心は、ミリ秒までの2つのタイムスタンプの違いを見つけることです。私と一緒に、タイムスタンプの内容のみを含むファイルがあります 2012-09-13 15:00:29,290 2012-09-13 15:00:29,297 2012-09-13 15:00:29,428 2012-09-13 15:00:29,447 このように、スクリプトを実行するときにパフォーマンスの問題に直面してはならない約30kのレコードがあります。うるう年、31日の月など、多くの要因がこのためのスクリプトを記述しようとしているときに思い浮かびます。 誰かが私を助けてくれますか?

1
不正確なテキスト検索
以下のような任意の有用性があるgrepかさえもuniqが、不正確な検索のためには、または私はそれを自分で書く必要がありますか? つまり、90%(数値は異なる場合があります)マッチング、またはそのようなものを調べます。たとえば、いくつかの文字列を含むファイルがあります。 abc123 abd123 abc223 qwe938 この場合、このようなユーティリティは最初の3つの文字列を返すか、類似していると言う必要があります。もちろん、grepやの場合のように、ファイルのコンテンツのパターンを知りませんuniq。

7
シェルで数字行とアルファベット行のテキストをマージする方法は?
次のようなテキストを持つファイルがあります。 AAAA BBBB CCCC DDDD 1234 5678 9012 3456 EEEE 7890 等... そして、アルファベットの行と数値の行を一致させて、次のようにします。 AAAA 1234 BBBB 5678 CCCC 9012 DDDD 3456 EEEE 7890 誰かがこれを達成する簡単な方法を知っていますか?

1
バイナリファイルを最初から追跡するには(la "tail -f")
バイナリファイルを最初から追跡することは可能tail -fですか? これはscp、ファイルをリモートサーバーに送信しているときに、別のプロセスにフィードしたい場合などに便利です(そう、私はssh+ catトリックを使用できることを知っています)。 私がFMから読む限り、tailテキストファイルを念頭に置いて書かれています。 標準のposixツールを使用してそのような操作を行う簡単な方法はありますか?


2
ファイルシステムブランチの各ファイルのすべてのタブを2つのスペースに置き換える方法は?
私はScalaをコーディングしていますが、慣例として、識別のためにレベルごとに2つのスペースを使用しています。しかし、さまざまなエディターを使用すると、ソースがスペースとタブの混合でいっぱいになります。 すべてのファイル(実際には* .scalaファイルですが、これを指定する必要はありません)を自動的にリファクタリングしたい(特定のディレクトリおよびすべての基になるFSブランチで(再帰的に))、すべてのタブを二重スペースに置き換えます。古典的なUnix / GNUツールでこれを行うには簡単で美しい方法があると思いますが、この分野での経験はありません。手伝ってくれませんか?

2
「uniq」または「sort -u」行がどこにあるのか、いくつかのユニコード文字がある
次のコードスニペットで何が起こっていますか?期待どおりの出力が得られません。 バグだと思いますが、2つの異なるプログラム(uniqとsort)で発生するので、何か関係があるのではないかと思います。 最初の3つ(4つのうち)の例は機能しますが、4番目の例は失敗します。 すべてのキャラクターで同じ動作が期待されます。 すなわち。(入力の3行から)2行を出力するには... 4番目のケースでは、1行しか表示されません(sort -uおよびの両方uniq)。2つの同一のリンが消えるだけです! 表示をコンパクトにするために、出力「\ n」をスペースに変換しました。 私が使用していますUNIQをしてソート(GNUのcoreutilsの)7.4から... Ubuntuの10.04.3 LTSデスクトップ上で実行されています。 スクリプト: { locale -k LC_COLLATE echo for c1 in x 〼 ;do for c2 in z 〇 ;do echo -n "asis : "; echo -e "$c1\n$c2\n$c2" |tr '\n' ' ';echo echo -n "uniq : "; echo -e "$c1\n$c2\n$c2" …


6
grepの-A -B -Cスイッチ(前後に数行を出力する)に代わるものはありますか?
grep -A 2 -B 3 grep文字列の後に2行印刷し、その前に3行印刷します。 grep -C 3 前に3行と後の3行を印刷します 残念ながら、grep私が使用しているものはこれらのオプションをサポートしていません。これをシミュレートするために使用できる代替コマンドまたはスクリプトはありますか?sed/ awk/ perl/ shellスクリプトを使用していますか?

2
ファイル内の発生ごとに複数の行を削除するにはどうすればよいですか?
この857835行ファイルがあり、次のようなものが含まれているとします。 a1 rubbish1 rubbish2 rubbish3 rubbish4 a1 rubbish5 rubbish6 rubbish7 rubbish8 そしてa1、次の行(rubbish1およびrubbish5この例では)の出現をすべて削除したいと思います。どうすればいいのですか? 私はgrep 'a1' -v -A1役に立たないように試みました、そして私のsed skillzは本当に素晴らしくありません:} 今回、Google-fuは私を助けてくれませんでした。誰か助けてください!

4
複数のファイルにテキスト行を追加する
それで、ディレクトリにたくさんのファイルがあり、それぞれにテキスト行を挿入する必要があります。それらは基本的に次のフォーマットを持っています: <VirtualHost *:80> ServerAdmin gabe@localhost DocumentRoot /var/www/test1 ServerName test1.local ServerAlias test1 <Directory "/var/www/test1"> Options All AllowOverride All </Directory> </VirtualHost> そして、閉会の前に行を挿入したいと思います </ VirtualHost>鬼ごっこ。私の最初の仮定は、おそらくsedを使用してこれを実行できるはずであり、おそらくそのタグを一致させて置き換えることです。私はこれを試み始めるつもりですが、誰かがこれを行うための既存の方法を持っているなら、私はそれを聞いてみたいです。

6
ファイル内のパターンのN番目の出現のみを置き換える方法は?
sedコマンドを使用してファイル内の3番目の文字列を置き換える方法。 例: 唯一の第三の発生を変更isするusファイルに。 私の入力ファイルには以下が含まれます: hai this is linux. hai this is unix. hai this is mac. hai this is unchanged. 私は出力が期待されています: hai this is linux. hai thus is unix. hai this is mac. hai this is unchanged.

3
非常に大きなファイルの文字列を置き換える
以下と同じ形式で、分離文字のない非常に長い一連のURLがあります。 http://example.comhttp://example.nethttp://example.orghttp://etc... 各URLを新しい行に配置します。sedを使用して「http://」のすべてのインスタンスを「\ nhttp://」に置き換えることでこれを試みました sed 's_http://_\nhttp://_g' urls.txt しかし、セグメンテーション違反が発生します(メモリ違反)。ファイルのサイズ(100 GBを超える)が原因で、sedが何らかの制限を超えていることが推測できます。 ファイルをいくつかの小さなファイルに分割して処理することもできますが、 "http://"のインスタンスはすべてそのままにしておく必要があります。 これを行うより良い方法はありますか?

3
リストを取得してファイルから削除するにはどうすればよいですか?
/ etc / remotedomainsから削除する必要があるドメイン名の長いリストがあります。それらはおそらくファイル内で特定の順序ではありません。各ドメインは1行です。 リストを繰り返し処理して、リモートドメインでその行を見つけて削除する方法を教えてください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.