0

これはフィードファイルです、

dfscmd /map "\\SERVER24\dfs\shared\can\Group Pension\Quality Assurance Auditors" "\\serverfile16\bugp-qaaud$" ""
dfscmd /map "\\SERVER24\dfs\userhome\serverfile52_d" "\\serverfile52\userhome_d" ""
dfscmd /map "\\SERVER24\dfs\shared\can\Wealth Management\WM CSC Stats - Support Team, CRT Team & CSR Performance" "\\serverfile48\bucan-WM_CSC_Support_&_CRT_Team_Stats" ""

この行を使用する

gawk -v FS=""" "{print $2 \";\" $4 }" a.txt

印刷はできますが、出力を保存できません。

C:\>gawk -v FS=""" "{print $2 \";\" $4 }" a.txt   >b.txt
\\SERVER24\dfs\shared\can\Group Pension\Quality Assurance Auditors;\\serverfile16\bugp-qaaud$
\\SERVER24\dfs\userhome\serverfile52_d;\\serverfile52\userhome_d
\\SERVER24\dfs\shared\can\Wealth Management\WM CSC Stats - Support Team, CRT Team & CSR Performance;\\serverfile48\bucan-   WM_CSC_Support_&_CRT_Team_Stats
gawk: (FILENAME=a.txt FNR=3) fatal: cannot open file `>b.txt' for reading (Invalid argument)
4

2 に答える 2

2

awk中括弧を囲むには、常に一重引用符を使用する必要があります。これはより良いでしょう:

 gawk -v FS=\" '{ print $2 ";" $4 }' a.txt > b.txt

内容b.txt

\\SERVER24\dfs\shared\can\Group Pension\Quality Assurance Auditors;\\serverfile16\bugp-qaaud$
\\SERVER24\dfs\userhome\serverfile52_d;\\serverfile52\userhome_d
\\SERVER24\dfs\shared\can\Wealth Management\WM CSC Stats - Support Team, CRT Team & CSR Performance;\\serverfile48\bucan-WM_CSC_Support_&_CRT_Team_Stats

編集:

Windowsを使用している場合は、次のようなスクリプトの実行を検討することもできます。

gawk -f script.awk a.txt > b.txt

内容script.awk

BEGIN { FS="\"" }
{ print $2 ";" $4 }

これにより、式を引用符で囲む必要がなくなり、必要な結果が得られます。HTH。

于 2012-11-07T00:16:24.453 に答える
0
gawk -v FS=""" "{print $2 \";\" $4 }" a.txt   ">b.txt
于 2012-11-07T00:16:27.293 に答える