Что я хочу сделать:
Я в основном пытаюсь получить внутри моей команды что-то вроде: «если haha.txt существует, переименуйте в lol.txt». Однако в разных каталогах будет много файлов haha.txt, и для того, чтобы она работала, мне нужно иметь возможность выполнить эту команду и переименовать только файл haha.txt в моем текущем каталоге. Однако во всех моих попытках всегда хочется, чтобы я точно указывал, где находится файл, что не сработает. (Возможно, это потому, что команда находится в пути, а не в этой папке?)
Итак, вопрос:
Есть ли способ использовать команду RENAME
/REN
в командном файле без указания каталога, и вместо этого переименовать его в текущем каталоге?
Изменить: В соответствии с просьбой, вот мой сценарий (со всеми вещами, не важными для нас, взяты из него)
Также немного другой информации:
- Имя: SSHCrack.cmd
- Открывается с помощью: открытия командной строки, перехода в папку с uncrackedSSH.txt и ввода SSHCrack 22
- Цель: переименование uncrackedSSH.txt в crackedSSH.txt
- Расположение: Путь
Автор сценария:
@echo off
title SSHCrack
set x=%1
if not defined x goto unknown
if %x%==22 (
goto correct
) else (
goto wrong
)
:correct
echo SSHCrack running...
if exist uncrackedSSH.txt (
ren uncrackedSSH.txt crackedSSH.txt
echo -- SSHCrack Complete --
goto end
)
if exist crackedSSH.txt (
echo SecureShell port already open
goto end
) else (
echo SecureShell port not found
goto end
)
:unknown
echo Please specify a port number
goto end
:wrong
echo Wrong port number
:end
title cmd.exe
Я попытался использовать «ren.\ UncrackedSSH.txt crackedSSH.txt», используя «cd% cd%» для ссылки на текущий каталог, попытался напрямую связать определенную папку с «cd /d C:\ SpecificFolder» и попытался поместить файл .bat в ту же папку, что и uncrackedSSH.txt и запустить его оттуда, но я всегда получаю:
SSHCrack Running...
The system cannot find the file specified.
-- SSHCrack Complete --
Всякий раз, когда я захожу в папку, имя uncrackedSSH.txt не меняется.