0

次の内容のファイルがあります。

http://server.in.oracle.com:18080/svn/SVN_DEMO/branches/CI_TEST/AM/SQL/ampks_amdtronl_kernel.sql
http://server.in.oracle.com:18080/svn/SVN_DEMO/branches/CI_TEST/AM/SQL/ampks_amdtronl_utils.sql
http://server.in.oracle.com:18080/svn/SVN_DEMO/branches/CI_TEST/AM/SQL/ampks_fundupload.sql
http://server.in.oracle.com:18080/svn/SVN_DEMO/branches/CI_TEST/AM/SQL/ampks_amdtronl_main.sql
http://server.in.oracle.com:18080/svn/SVN_DEMO/branches/CI_TEST/AM/SQL/ampks_validate.sql

次のようにファイルをフォーマットするには、バッチ スクリプトが必要です。

ampks_amdtronl_kernel.sql:AM/SQL/ampks_amdtronl_kernel.sql
ampks_amdtronl_utils.sql:AM/SQL/ampks_amdtronl_utils.sql
ampks_fundupload.sql:AM/SQL/ampks_fundupload.sql
ampks_amdtronl_main.sql:AM/SQL/ampks_amdtronl_main.sql
ampks_validate.sql:AM/SQL/ampks_validate.sql

それは filename:Path/from/AM/til/filname です

よろしくお願いします。

4

5 に答える 5

1
for /f %%a in (file.txt) do echo %%~nxa:AM/SQL/%%~nxa >>temp.txt
del file.txt /f /q
ren temp.txt file.txt
于 2012-12-18T09:19:15.077 に答える
0

選択したループの場合:1。行を2つに分割します

suffix=${line##.*/AM}   # this deletes everything before /AM so you have the suffix
fname=`basename $line`  # this gives you the name of the file
  1. 必要に応じてピースを組み立て直します

    echo "$ {fname}:$ {sufffix}"

または、の1行でそれを行うこともできますsed

于 2012-12-18T08:58:06.827 に答える
0
@echo off
For /F "tokens=7-9 delims=/" %%a in (thefile.txt) do echo %%c:%%a/%%b/%%c
于 2012-12-19T15:26:05.907 に答える
0

これを行うには awk を使用できます。または、単純なテキスト エディタを使用してhttp://server.in.oracle.com:18080/svn/SVN_DEMO/branches/CI_TESTを空の文字列に置き換えます。次に、ファイルを Excel にインポートして、文字列を「/」の列に分割します。最後に、(Excel で) 連結関数を使用して文字列を作成します。

私はawkを好むでしょう、あなたは分割機能を使う必要があります

awk '{split($0,a,"/"); a[10]、':'、a[6]、'/'、a[7]、'/'、a[8]、'/'、a[9]、'/'、a[10] を印刷します。 }'`

于 2012-12-18T09:04:53.400 に答える
0

救助へのPowerShell:

param ([string] $inFileName, [string] $outFileName)

function Reformat-String
{
    param (
        [string] $str
    )

    $split = $str.Split("/")

    return $split[9] + ":" + $split[7] + "/" + $split[8] + "/" + $split[9]
}

$file = Get-Content $inFileName

foreach($line in $file)
{
    $newLine = Reformat-String $line
    $newLine | Out-File $outFileName -Append
}

「reformat.ps1」として保存されます。.\reformat.ps1 として呼び出す SourceFilePath DestinationFilePath

于 2012-12-18T09:12:54.543 に答える