0

したがって、「jar」タイプのディレクトリ内のすべてを取得するjarを作成してから、ディレクトリ名とファイル名をリストするようにしています。

だから、このようなもの:

Listing of files in Directory c:\abc\123

myJar1.jar
myJar2.jar
...
myJar10.jar

出力をどのように表示したいかは、次のようなものです。

<jar href="123/myJar1.jar"/>
<jar href="123/myJar2.jar"/>
...
<jar href="123/myJar10.jar"/>

このスクリプトには多くの問題がありました。設定している変数を取得して、通常の方法でテキストに追加することができないようです。

どんな助けでも大歓迎です。

4

2 に答える 2

1

私のバッチフーは非常に強力であることがわかりました:

@echo off
dir /b /A *.jar > myJars.txt
for %%* in (.) do set CurrDirName=%%~n*
for /F "tokens=*" %%A in (myJars.txt) do echo ^<jar href^="%CurrDirName%/%%A" /^> >> myJars2.txt
于 2012-12-03T21:50:47.917 に答える
1

中間ファイルも環境変数も必要ありません。

@echo off
>myJars.txt (for %%D in (.) do for %%F in (*.jar) do echo ^<jar href="%%~nD/%%F"/^>)

隠しファイルとシステムファイルを本当に含める必要がある場合は、次の長いバージョンが機能します

@echo off
>myJars.txt (for %%D in (.) do for /f "eol=: delims=" %%F in ('dir /b /a-d *.jar') do echo ^<jar href="%%~nD/%%F"/^>)

上記の両方を再フォーマットして、もう少し読みやすくすることができます。

:: excludes hidden and system files
@echo off
>myJars.txt (
  for %%D in (.) do (
    for %%F in (*.jar) do (echo ^<jar href="%%~nD/%%F"/^>)
  )
)

:: includes hidden and system files
@echo off
>myJars.txt (
  for %%D in (.) do (
    for /f "eol=: delims=" %%F in (
      'dir /b /a-d *.jar'
    ) do (echo ^<jar href="%%~nD/%%F"/^>)
  )
)
于 2012-12-03T22:33:03.243 に答える