The UNIX and Linux Forums  


Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > UNIXのダミー質問と回答のため
Googleのunix.com



UNIXのダミー質問と回答のため もしUNIXやLinuxについての質問があれば、ここに投稿してください。すべてのUNIXおよびLinux初心者歓迎!

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
言葉なしでの行数 サティシュ@ 123 シェルプログラミングとスクリプティング 7 2008年5月21日 03:59午前
@の行を特定する必要があるファイルの行の間に b.paramanatti UNIXのダミー質問と回答のため 4 2007年11月4日 10:50午後
一行からの単語を分離するか? skyineyes シェルプログラミングとスクリプティング 3 2007年6月26日 午前10時
行と重複行を削除する オセロット UNIXのダミー質問と回答のため 11 2007年1月30日 12:44午後
重複する言葉 zulander UNIXのダミー質問と回答のため 1 2001年4月1日 04:11午前

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2007年4月27日
srinivasan_85 srinivasan_85 is offline
登録ユーザー
  
 

参加日: 2007年1月
投稿: 28
Exclamation 1行のコマンドを使用して単語を識別重複

やあ、
私は明らかに問題を説明させてください:
私のファイルにするのエントリみましょう:

コード:
lion,tiger,bear
apple,mango,orange,apple,grape
unix,windows,solaris,windows,linux
red,blue,green,yellow
orange,maroon,pink,violet,orange,pink

私たち)は、言葉の1つ(フィールドの区切り文字で区切っている行を検出することはできますが一度は、コマンド(またはコマンド管)を使用して多く発生しますか?
この場合、コマンドは、 2,3,5行を検出する必要があります。

私はそれを使用して達成 perlの スクリプト(下記参照)かどうかは、このコマンドによって行うことができるのか、 (その困難はないことを挙げた。カラムの定数ではありません) 。

Perlの プログラムが使用される:

コード:
$fname=<STDIN>;
chomp $fname;
open(file,"<$fname");
$found_dups=0;

for $line(<file>)
{
  chomp $line;
  @arr=split(/,/,$line);
  for($i=1;$i<=$#arr;$i++)
  {
     for($j=$i+1;$j<=$#arr;$j++)
     {
        if($arr[$i] eq $arr[$j])
        {
           print "tid $arr[0]\n";
           $found_dups++;
        }
     }
  }
}
print "Found $found_dups duplicates\n";

ありがとう、
Srini
  #2固定リンク)  
Old 2007年4月27日
ghostdog74 ghostdog74 is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2006年9月
投稿数: 2,556
Pythonの場合は、ここでは代替のneater :

コード:
#!/usr/bin/python
for line in open("file"):
    line = line.strip().split(",")
    if len(line) == len(set(line)):
        print "No change"
    else:
        print ','.join(line)

出力:

コード:
# ./test.py
No change
apple,mango,orange,apple,grape
unix,windows,solaris,windows,linux
No change
orange,maroon,pink,violet,orange,pink

  #3固定リンク)  
Old 2007年4月27日
awkは awk is offline
登録ユーザー
  
 

参加日: 2007年2月
投稿数: 134
awkは- Fが、 ' (
(私\u003d 1 ;私<のNF ;のI + + )

(私はJ \u003d 1 ; J < \u003dのNF ; J + +の)

もし( $私\u003d\u003d $ J )を( $私は" : " $ 0 )を印刷


) ' < < ENDOFFILE
ライオン、トラ、クマ
リンゴ、マンゴー、オレンジ、リンゴ、ブドウ
UNIXは、 Windows版、 Solaris 、 WindowsやLinux
、 、 、青緑赤黄色
オレンジ色、えび茶色、ピンク、紫、オレンジ、ピンク
ENDOFFILE
リンゴ:アップル、マンゴー、オレンジ、リンゴ、ブドウ
窓: UNIXは、 Windows版、 Solaris 、 WindowsやLinux
オレンジ色:オレンジ、えび茶色、ピンク、紫、オレンジ、ピンク
ピンク:オレンジ、えび茶色、ピンク、紫、オレンジ、ピンク
  #4固定リンク)  
Old 2007年4月27日
srinivasan_85 srinivasan_85 is offline
登録ユーザー
  
 

参加日: 2007年1月
投稿: 28
Unhappy

やあ、
Thanxの提案。私は、ジョブのスクリプトのさまざまなバリエーションで、しかし私は" 1つのコマンドを実行することができます午前熱心/コマンドをパイプ"は、仕事をすることができます理解しています。各ラインのエントリがある場合のみ、特定の番号を、私はしている手動コマンドでそれらを比較することができますAwkのラインを使用して/perlの。しかし、私dontはない知っている。各ラインのエントリは、面倒な作業です。
もしこれらのスクリプトのコマンドをパイプのバージョンを取得私は賢明だろう。

ありがとう
Srini
  #5固定リンク)  
Old 2007年4月30日
kahuna's Avatar
ハワイ先住民の祈祷師 kahuna is offline
登録ユーザー
  
 

参加日: 2007年4月
投稿数: 149
Srini 、私はあなたの不本意のスクリプトを使用するように理解することがよく分かりません。は、下記のスクリプトを試す可能性があるということ。非常に短いですが、効率的ではない。

コード:
perl -nle 'print if /(^|,)([^,]+)(,|,.*,)\2(,|$)/;' <file

  #6固定リンク)  
Old 2007年4月30日
matrixmadhan matrixmadhan is offline Forum Advisor  
Technoratiのマスター
  
 

参加日: 2005年3月
場所:Bのリーフノード+木
投稿数:2958
再び perlの
しかし多くの単純な


コード:
#! /opt/third-party/bin/perl

open(FILE, "<", "file") || die "Unable to open file <$!> \n";

while(chomp($var=<FILE>)) {
  @arr = split(/,/, $var);
  foreach(@arr) {
    if( exists $fileHash{$_} ) {
      print $var . "\n";
      last;
    }
    else {
      $fileHash{$_} = $i++;
    }
  }
  %fileHash = ();
}

close(FILE);

exit 0

  #7固定リンク)  
Old 2007年5月1日
srinivasan_85 srinivasan_85 is offline
登録ユーザー
  
 

参加日: 2007年1月
投稿: 28
Wink

やあ、
私は間違いだと思う。
引用:
当初の投稿 ハワイ先住民の祈祷師
Srini 、私はあなたの不本意のスクリプトを使用するように理解することがよく分かりません。
私は、この質問を投稿このような要件があったが、これは、 "コマンドライン"のバージョンについてguyz聞いて私は自分が運転した私の好奇心 perlの プログラムすることができる。それは私は投稿が、スクリプトを無視午前1 -ライナーは、私の私の知識の拡大を望んではない(私)のライナーに向けての魅力があります。

自分の傲慢された証書はすみません。

ありがとう、
Srini
Closed Thread

ブックマーク

タグ
linuxの

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 03:49午後


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0