最初の列に先行ゼロを追加

最初の列に先行ゼロを追加

csvファイルの最初の列に4つの先行ゼロを追加したいと思います。

EADUnitID,irn,EADPhysicalTechnical,AdmPublishWebNoPassword,AdmPublishWebPassword,EADUnitTitle,EADBiographyOrHistory,EADScopeAndContent,EADArrangement,EADAcquisitionInformationRef.SummaryData,EADRelatedMaterial,BibBibliographyRef_tab.SummaryData
ga.1.2.6,52144,GLS Add. GA 1/2/6,Yes,Yes,Dzöfi. ,,,,,,
ga.1.2.7,52145,GLS Add. GA 1/2/7,Yes,Yes,Dzöfi. ,,,,,,
ga.1.2.8,52146,GLS Add. GA 1/2/8,Yes,Yes,Two young girls. ,,,,,,
ga.1.2.9,52147,GLS Add. GA 1/2/9,Yes,Yes,J. Blum. ,,,,,,
ga.1.2.10,52148,GLS Add. GA 1/2/10,Yes,Yes,TsïGA.0 ,,,,,,
ga.1.2.11,52149,GLS Add. GA 1/2/11,Yes,Yes,Wupa. ,,,,,,
ga.1.2.12,52150,GLS Add. GA 1/2/12,Yes,Yes,Tochter des Bälo Laubinger. Stamm: Lowära, Pferdezigeuner. ,,,,,,
...<snip>...
ga.1.2.311,52449,GLS Add. GA 1/2/311,Yes,Yes,Beinrode 1962. Zu dunkel! ,,,,,,
ga.1.2.312,52450,GLS Add. GA 1/2/312,Yes,Yes,Bienrode 1962. Zu dunkel! ,,,,,,
ga.1.2.313,52451,GLS Add. GA 1/2/313,Yes,Yes,Bienrode 1962. Zu dunkel! ,,,,,,
ga.1.2.314,52452,GLS Add. GA 1/2/314,Yes,Yes,Lowara und Sintitsa! FrÜhjahr Bienrode 1962. ,,,,,,
ga.1.2.315,52453,GLS Add. GA 1/2/315,Yes,Yes,Madamenweg Walódza und Peabaí März 1962. Als ich die Familie photographierte, entbläßte plötzlich die Frau ihre Brust Vielleicht hätte ich nun nicht knipsen dÜrfen. Aber anderseits war das Erleben interessant. Offenbar meint die Frau mit Liege ansolchen Bildern. Georg Althaus. ,,,,,,
ga.1.2.316,52454,GLS Add. GA 1/2/316,Yes,Yes,Dzöfi. Dzöfi u. ihre schwester Rúpa gehören zur Gruppe der ungarischen Zig., mithin zu den Romzig. Sie sind also Lòwära, Pferdezig. ,,,,,,
ga.1.2.319ca,52455,GLS Add. GA 1/2/317-327,Yes,Yes,Closed to Access ,,,,,,
ga.2,52456,GLS Add. GA 2,Yes,Yes,Hanns Weltzel papers. ,,,,,,

次のようになります。

EADUnitID,irn,EADPhysicalTechnical,AdmPublishWebNoPassword,AdmPublishWebPassword,EADUnitTitle,EADBiographyOrHistory,EADScopeAndContent,EADArrangement,EADAcquisitionInformationRef.SummaryData,EADRelatedMaterial,BibBibliographyRef_tab.SummaryData
ga.00001.00002.00006,52144,GLS Add. GA 1/2/6,Yes,Yes,Dzöfi. ,,,,,,
ga.00001.00002.00007,52145,GLS Add. GA 1/2/7,Yes,Yes,Dzöfi. ,,,,,,
ga.00001.00002.00008,52146,GLS Add. GA 1/2/8,Yes,Yes,Two young girls. ,,,,,,
ga.00001.00002.00009,52147,GLS Add. GA 1/2/9,Yes,Yes,J. Blum. ,,,,,,
ga.00001.00002.00010,52148,GLS Add. GA 1/2/10,Yes,Yes,TsïGA.0 ,,,,,,
ga.00001.00002.00011,52149,GLS Add. GA 1/2/11,Yes,Yes,Wupa. ,,,,,,
ga.00001.00002.00012,52150,GLS Add. GA 1/2/12,Yes,Yes,Tochter des Bälo Laubinger. Stamm: Lowära, Pferdezigeuner. ,,,,,,
...<snip>...
ga.00001.00002.00311,52449,GLS Add. GA 1/2/311,Yes,Yes,Beinrode 1962. Zu dunkel! ,,,,,,
ga.00001.00002.00312,52450,GLS Add. GA 1/2/312,Yes,Yes,Bienrode 1962. Zu dunkel! ,,,,,,
ga.00001.00002.00313,52451,GLS Add. GA 1/2/313,Yes,Yes,Bienrode 1962. Zu dunkel! ,,,,,,
ga.00001.00002.00314,52452,GLS Add. GA 1/2/314,Yes,Yes,Lowara und Sintitsa! FrÜhjahr Bienrode 1962. ,,,,,,
ga.00001.00002.00315,52453,GLS Add. GA 1/2/315,Yes,Yes,Madamenweg Walódza und Peabaí März 1962. Als ich die Familie photographierte, entbläßte plötzlich die Frau ihre Brust Vielleicht hätte ich nun nicht knipsen dÜrfen. Aber anderseits war das Erleben interessant. Offenbar meint die Frau mit Liege ansolchen Bildern. Georg Althaus. ,,,,,,
ga.00001.00002.00316,52454,GLS Add. GA 1/2/316,Yes,Yes,Dzöfi. Dzöfi u. ihre schwester Rúpa gehören zur Gruppe der ungarischen Zig., mithin zu den Romzig. Sie sind also Lòwära, Pferdezig. ,,,,,,
ga.00001.00002.00319ca,52455,GLS Add. GA 1/2/317-327,Yes,Yes,Closed to Access ,,,,,,
ga.00002,52456,GLS Add. GA 2,Yes,Yes,Hanns Weltzel papers. ,,,,,,

私はgsub、gensub、printfを見ましたが、どのように進むべきかわかりません。

ベストアンサー1

はい、もう少しトリッキーです。努力する

awk -F, '
        {n=split ($1, T, "\.")
         $1 = DL = ""
         for (i=1; i<=n; i++)   {S[i] = T[i] + 0
                                 gsub (/[0-9]/, "", T[i])
                                 $1 = $1 DL (S[i]?sprintf ("%05d", S[i]):"") T[i]
                                 DL = "."
                                }
        }
1
' OFS=, file

.最初のフィールドを配列に分割し、Tそれを繰り返し、Tその要素の開始番号を配列に入れSawk文字列の先行番号のみを使用して算術を実行するにはs関数を使用)、先行要素のみを削除します。それから位置を決め、Tフィールドを再構築します$1

おすすめ記事