![]() |
|
|
Googleのunix.com
|
|||||||
| シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| フィールドのセパレータを変更する方法 | onthetopo | シェルプログラミングとスクリプティング | 2 | 2007年5月11日 01:11午後 |
| を使用する|参加するには、セパレータとして | firvin | UNIXのダミー質問と回答のため | 5 | 2006年3月28日 12:23午後 |
| コンマセパレータ | premar | シェルプログラミングとスクリプティング | 6 | 2006年2月17日 04:16午前 |
| どうすればセパレータのためのWordを使用することができます | qrshat | Sun Solaris | 3 | 2006年2月10日 07:08午前 |
| Awkのフィールドセパレータヘルプ | insania | シェルプログラミングとスクリプティング | 3 | 2005年11月11日 04:29午前 |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
||||
|
Awkの問題でSUBSEPセパレータ
二重引用符で、次のコードを新しい行を削除 私が123で二重引用符で改行文字を置き換える。 コード:
intermediatenewline_remover () {
typeset Infile=$1
nawk -F"," '{ record = record $0
if ( gsub( /"/, "&", record ) % 2 )
{
record = record "123"
next
}
}
{
print record
record = ""
}' Infile
}
ここで私は123 "と"セパレータとして第4回と5フィールドの組み合わせです コード:
nawk -F"|" '{print $2,$3,$4"123"$5}' OFS="|" file
" "スペースで123カンマとセパレータを交換。 この問題をここにデータを持っている場合、 " 123 "にもスペースに取って代わられるということです。 私は読み替えるものとする"セパレータは" 123します。 コード:
nawk -F"|" '{gsub(",", " ",$3);gsub("123", " ",$3);print}' OFS="|" file
私SUBSEPを使用してみました SUBSEPの代わりに"値を使用してのこのコードは\ 034 "を" SUBSEP "を挿入する コード:
intermediatenewline_remover () {
typeset Infile=$1
nawk -F"," '{ record = record $0
if ( gsub( /"/, "&", record ) % 2 )
{
record = record "SUBSEP"
next
}
}
{
print record
record = ""
}' Infile
}
このコードをどのようにこの変更を処理する コード:
nawk -F"|" '{print $2,$3,$4"123"$5}' OFS="|" file
nawk -F"|" '{gsub(",", " ",$3);gsub("123", " ",$3);print}' OFS="|" file
|