3

フォルダーに book.csv ファイルがありますC:\sam。最初に名前を変更してからに移動する.batスクリプトを書きたいと思いC:\samyます。また、book.csv は動的ファイル名になります。

編集

ファイルが既に存在する場合、ファイルをあるフォルダーから別のフォルダーに移動し、新しいファイルを作成するスクリプトが必要です。

たとえば、ダウンロード フォルダーにファイル test.csv があります。以下のスクリプトを実行すると、downloads1 フォルダーに同じ名前のファイルが存在する場合にファイルが上書きされます。

しかし、既存のファイルを上書きするべきではありませんが、両方のファイルが存在する必要があります。多分それは名前を変更します.後ろに1,2を追加します.

move C:\user\Downloads\*.csv C:\user\downloads1\

また、 /-Y を使用すると、オーバーライドする必要があるかどうか尋ねられることもわかっています。しかし、私はこれを自動的に行いたいです。

move /-Y C:\user\Downloads\*.csv C:\user\downloads1\
4

1 に答える 1

7
@echo off
set /p new_name=set a new name   
 move /Y C:\sam\books.csv C:\samy\%new_name%.csv

また

@echo off 
 move /Y C:\sam\books.csv C:\samy\%%~1.csv

1 つ目は、ユーザーに新しい名前を尋ねます。2 つ目は、コマンド ライン引数に依存します。movescript.bat new_name

EDIT以下 のコメントの 2 番目のリクエストの後、renコマンドを使用する必要があるようです。

  @echo off
  set /p new_name=set a new name   
  move /Y C:\sam\books*.csv C:\samy\
  cd /D C:\samy\
  ren book_????_??_??.csv %new_name%_????_??_??.csv

また

    @echo off 
    move /Y C:\sam\books*.csv C:\samy\
    cd /D C:\samy\
    ren book_????_??_??.csv %%~1_????_??_??.csv
于 2013-10-17T09:28:02.313 に答える