1

以下のコードで正しい出力形式を取得するのに少し問題があります。出力は次のようになります。

bb.pdf---------------color found
HIGHLY Rate.pdf------color found

など...など

私は得ています:

bb.pdf---------------color found
HIGHLY Rate.pdf---------------color found

OK、実行時に動的に設定されるprintf %s%*.*s%sフォーマットを使用して、get variable printf フォーマットを試しています。*.*以下のコードでは、 で始まる行printfに if I set;

printf "%s%0.55s%s" $file_name $pad; gs -o - -sDEVICE............etc etc etc

その後、コードが実行されます。これは、私がこれを機能させることに近づいていることを示しています。問題は、0とが値をに$var_format送信できないこと*.*です。情報を提供してくれた人に感謝します。printfprintf "%s%0.$var_format%s"

A.ダス

cat /cygdrive/i/PDF/$machine/results.csv | \
parallel -j200% --progress 'padlength=130;\
width=`echo {}| wc -c`;\
pad=$(printf '%0.1s' "-"{1..60});\
file_name=`echo -n {} | sed "s;.*/;;"`;\
var_format=$((padlength - width - 11 ));\
printf "%s%*.*s%s" $file_name 0 $var_format  $pad ;gs -o - -sDEVICE=inkcov {} 2>/dev/null | \
awk "/CMYK OK$/ {if (\$1>0 || \$2>0 || \$3>0) {print \"------------------------------\
color found\"; exit;} } \
END {print \"\"  }";' >> /cygdrive/i/PDF/$machine/color_report_summary.txt
4

1 に答える 1