▼tonboさん:
>▼R.Nさん:
あてなのに、お邪魔してごめんなさい。
外部変形を、動作させて確認したわけではありません。
ちょっと、気になっただけです。
R.Nさんは、外部変形にお詳しい方なので、検証していただけると良いですね。
下記は、外部変形ではありません。
bat ファイルと、awk ファイルを同じフォルダーに入れて、
bat ファイルをダブルクリックするものです。
rem -------- jwf_file_check.bat --------
@echo off
jgawk -f jwf_file_check.awk
pause
# -------- jwf_file_check.awk --------
BEGIN {
print "────────────"
print "その1"
print "────────────"
jwf_file = "c:\jww\jw_win.jwf"
# 下記を実行すると、jw_win.jwf = c:jwwjw_win.jwf になる。
print "jw_win.jwf", "=", jwf_file
# 今のままだと、次の行の if は必ず実行される。
if ((getline < jwf_file) <= 0) {
print "close_1 =", close(jwf_file)
jwf_file = "c:\jww\Sample.jwf"
# 下記を実行すると、Sample.jwf = c:jwwSample.jwf になる。
print "Sample.jwf", "=", jwf_file
} else {
# c:jwwjw_win.jwf というファイルは通常存在しない為、ここが実行されることは無い。
print "close_2 =", close(jwf_file)
}
}
# 引き続き、フルパスの記述方法を変更して確認する。
BEGIN {
print "────────────"
print "その2"
print "────────────"
jwf_file = "c:\\jww\\jw_win.jwf"
# c:\jww\jw_win.jwfがあれば、jw_win.jwf = c:\jww\jw_win.jwf になる。
print "jw_win.jwf", "=", jwf_file
# c:\jww\jw_win.jwfがあれば、if は実行されない。
if ((getline < jwf_file) <= 0) {
print "close_3 =", close(jwf_file)
jwf_file = "c:\\jww\\Sample.jwf"
print "Sample.jwf", "=", jwf_file
} else {
# c:\jww\jw_win.jwfがあれば、クローズされる。
print "close_4 =", close(jwf_file)
}
}