The UNIX and Linux Forums  

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > シェルプログラミングとスクリプティング
Googleのunix.com



シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
どのように挿入するようにと願い行の後に任意の行を削除 RahulJoshi シェルプログラミングとスクリプティング 4 2008年10月20日 11:27午前
ファイルの各行のコロンを挿入するようにスクリプトが必要 canopus15 UNIXのダミー質問と回答のため 4 2008年8月5日 09:03午後
特定の行の後に行を挿入 namishtiwari シェルプログラミングとスクリプティング 8 2008年5月21日 03:16午後
どのようにデータを新しい行を挿入するように、スクリプトを使用してファイルを ソナ UNIXのダミー質問と回答のため 2 2006年8月22日 02:17午前
は非常に巨大なファイルには、最初の行に挿入する行 悲鳴 UNIXの詳細&エキスパートのためのユーザー 3 2005年3月9日 01:22午前

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

参加日: 2008年8月
投稿: 27
Awkのスクリプトを比較すると、行を挿入

やあ
私はすべての行6で始まる10月20日の定位置では、文字列を比較したい。場合には、 1行目で始まるのコピーを取る必要がありますし、行を6に試合を開始する前にそれを挿入dont 。どうすればいいのですか?助けてください。

例:

1試験1 765533 7643743
6 ○ 3 5363653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
7 323323 4343434435 545
6 ○ 3 5373653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
6 ○ 3 5373653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
6 ○ 3 5383653 373833
7 323323 4343434435 545
8 4345435435 5454545 55

これは、出力する必要があります

1試験1 765533 7643743

6 ○ 3 5363653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
7 323323 4343434435 545
1試験1 765533 7643743
6 ○ 3 5373653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
6 ○ 3 5373653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
1試験1 765533 7643743
6 ○ 3 5383653 373833
7 323323 4343434435 545
8 4345435435 5454545 55
  #2固定リンク)  
Old 2008年11月22日
replytoshishir replytoshishir is offline
登録ユーザー
  
 

参加日: 2006年5月
場所:バンガロール
投稿: 23
何を探しているように、もう少し説明してくださいすることができます.. ....これは、 BIOSファイルの行に私はあなたに役立つことができると思う.......

thnx shishir
  #3固定リンク)  
Old 2008年11月22日
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
中毒
  
 

参加日: 2007年1月
場所: Варна 、 България /ミラノ、イタリア
投稿数:2928
あなたのサンプルデータを考えると、縫い目が $ 4 正常に動作します。
使用 nawk または /usr/xpg4/bin/awk 〜の上に Solarisの


コード:
awk '/^1 / { s = $0 }
/^6 / && !t[$4]++ {
  c++ && $0 = s RS $0
  }1' infile

  #4固定リンク)  
Old 2008年11月23日
summer_cherry summer_cherry is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2007年6月
所在地:中国北京
投稿数:1099
perlの

コード:
open FH,"<d:/a.txt";
while(<FH>){
	if(m/^1.*/){
		$line=$_;
		print;
		next;
	}
	if(m/^6.*/){
		@t=split;
		if($temp eq ""){
			$temp=$t[3];
			print;
		}
		else{
			if(!($t[3] eq $temp)){
				print $line;
				print $_;
				$temp=$t[3];
			}	
			else{
				print;
			}		
		}
	}
	else{print;}
}

  #5固定リンク)  
Old 2008年11月23日
appsguy616 appsguy616 is offline
登録ユーザー
  
 

参加日: 2008年8月
投稿: 27
やあ
定位置は10月20日、フィールドでの第4のフィールドは必ずしもされています。お手伝いしてください。

ありがとう
  #6固定リンク)  
Old 2008年11月24日
radoulov's Avatar
radoulov radoulov is offline Forum Staff  
中毒
  
 

参加日: 2007年1月
場所: Варна 、 България /ミラノ、イタリア
投稿数:2928
しかし、赤の位置に置か 9月15日ではなく、 10月20日

〜とともに 9月15日 にする必要があります:


コード:
awk '/^1 / { s = $0 }
/^6 / && !t[substr($0,9,7)]++ {
  c++ && $0 = s RS $0
  }1' infile

場合 本当に 欲しい 10月20日場合は、引数に渡されるように変更する必要があります substr
  #7固定リンク)  
Old 2008年11月24日
appsguy616 appsguy616 is offline
登録ユーザー
  
 

参加日: 2008年8月
投稿: 27
その作品は、非常に感謝。
Closed Thread

ブックマーク

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

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

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

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