The UNIX and Linux Forums  


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



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

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
固定幅の列に区切られたファイルの列の1つの列を変更する manneni prakash シェルプログラミングとスクリプティング 5 2009年6月22日 06:27午前
aとb.both長いcolumns.iている2つのファイルfiles.say第1回Wはフロン列と一致するようにしたい TRUPTI UNIXのダミー質問と回答のため 4 2008年10月17日 02:17午後
残りのファイルの最初の列には、ファイルの最初の行を挿入します a_artha シェルプログラミングとスクリプティング 5 2008年7月28日 06:47午前
カラムがNULLをしている場合、どのようにしてファイルの列の列にNull値をチェックする Mandab シェルプログラミングとスクリプティング 7 2008年3月15日 09:57午前
複数のファイルから1つのファイルに結合cols vbshuru シェルプログラミングとスクリプティング 2 2003年11月20日 12:52午後

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

参加日: 2009年6月
投稿数: 4
Question 参加する3つのファイルにマッピングファイルキー列を使用して

私はUNIXのシェルスクリプトの新規だ。私は最近、 UNIXでレポートがExcel (区切り文字でファイル有効です)を生成しています。どうすればそれをするためのスクリプトを作成してください?

に参加する1ファイルを1つのUNIXコマンドの出力は、別のUNIXコマンドから2番目、 3番目は、データベースクエリからから来ている。すべてのこれら3つのファイルのキーcolumesをマッピングファイルから来ています。それは基本的に次のように:

MappingFile :
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
job1 a_name1
job2 c_name2
job3 b_name3
job4 e_name4

file1_toJOIN :
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
b_name3 12時〇 〇分03秒午後3時00分09秒
e_name4 10:30:00 11:00:00
c_name2 9時40分00秒10時12分00秒
a_name1 22時00分00秒23:00:00

file2_toJOIN :
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
job2トム22
job1段18
job4ジム25
job3金20

スプレッドシートのフォーマットを生成するために:
\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d
job1午前22時00分00秒23:00:00 01:00:00段18
......

ご協力に感謝いたします!
  #2固定リンク)  
Old 2009年7月1日
prasperl prasperl is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿: 22
このしてみてください!

このしてください

開始(のFS \u003d " " ) ; (印刷$ 1 ) ' `私は猫マップ| Awkの' `のために
する
mapkey1 \u003d $私
mapkey2 \u003d `猫マップ| ` $ mapkey1はgrep
mapkey2 \u003d ` $ mapkey2エコー| Awkの'開始(のFS \u003d " " ) ; (印刷$ 2 ) ' `
file1key \u003d `猫ファイル1 | ` $ mapkey2はgrep
file1key \u003d ` $ file1keyエコー| Awkの'開始(のFS \u003d " " ) ; (印刷$ 2 、 $ 3 ) ' `
file2key \u003d `猫ファイル2 | ` $ mapkey1はgrep
file2key \u003d ` $ file2keyエコー| Awkの'開始(のFS \u003d " " ) ; (印刷$ 2 、 $ 3 ) ' `
私file1key $ $ $ file2keyエコー
完了した


地図-あなたのマップファイル
File2に-あなたのfile1_toJOIN
ファイル2 - file2_toJOIN :

は、 O /パイがされます:
18段job1夜十時00分00秒23:00:00
job2午前9時40分00秒10時12分00秒トム22
job3 12時00分03秒15時00分09秒金20
job4 10:30:00 11:00:00ジム25
  #3固定リンク)  
Old 2009年7月1日
summer_cherry summer_cherry is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2007年6月
所在地:中国北京
投稿数:1088
コード:
nawk 'NR==FNR{
arr[$1]=$2
brr[$2]=$1
}
NR!=FNR{
	if (arr[$1]=="")
		brr[$1]=sprintf("%s %s",$2,$3)
	else
		print $1" "brr[arr[$1]]" "$2" "$3
}' map file1 file2
  #4固定リンク)  
Old 2009年7月2日
bigsmile bigsmile is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿数: 4
Smile 参加する3つのファイルにマッピングファイルを使用してキーcolume

お互いに感謝する。

私は、最初のスクリプトを試みた。それは完璧に動作します。私は、ビットの配列を理解するのは難しい、シェルスクリプトの初心者として感じている。としては本当にコンパクトに見えるしかし、私は明日、試してみます。私は、将来的に使用したいのですが。
  #5固定リンク)  
Old 2009年7月3日
prasperl prasperl is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿: 22
より良い理解のためのコメントで

#オープニングのファイル
開始(のFS \u003d " " ) ; (印刷$ 1 ) ' `私は猫マップ| Awkの' `のために
する

マップファイルに# Column1 File1は鍵となる
mapkey1 \u003d $私

mapkey2 \u003d `猫マップ| ` $ mapkey1はgrep

# Column2マップファイルのファイル1の鍵となる

mapkey2 \u003d ` $ mapkey2エコー| Awkの'開始(のFS \u003d " " ) ; (印刷$ 2 ) ' `

ファイル1から番号を選択する値にマップファイルからmapkey2ベース
file1key \u003d `猫ファイル1 | ` $ mapkey2はgrep
file1key \u003d ` $ file1keyエコー| Awkの'開始(のFS \u003d " " ) ; (印刷$ 2 、 $ 3 ) ' `

ファイル2から#を選択する値にマップファイルからmapkey1ベース
file2key \u003d `猫ファイル2 | ` $ mapkey1はgrep
file2key \u003d ` $ file2keyエコー| Awkの'開始(のFS \u003d " " ) ; (印刷$ 2 、 $ 3 ) ' `

# Diplay結果
私file1key $ $ $ file2keyエコー
完了した
  #6固定リンク)  
Old 2009年7月4日
bigsmile bigsmile is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿数: 4
、 Prasperlありがとうございました。

私ksh 、いくつかの理由で、私のAwkシンエラー使用した。フィールドのセパレータを削除した後、私を介してみよう。場合は、理由を知っていますか?
  #7固定リンク)  
Old 2009年7月5日
prasperl prasperl is offline
登録ユーザー
  
 

参加日: 2009年6月
投稿: 22
を使用すると、エラーメッセージのコードを使用ポストūていただけますか?
Reply

ブックマーク

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

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

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

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




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


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

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