2014-01-10 3 views
0

Я пытаюсь написать пакетный скрипт для перемещения папки с помощью Android ADB.Получить имя папки% 1 Параметр для пакетного файла

команды я пытаюсь достичь:

c:\adbpush.bat d:\Android\XDA\Bootlogo 

Как получить строку Bootlogo?

Я хочу сделать что-то вроде этого

@echo off 
c: 
cd \adb 
adb push d:\Android\XDA\Bootlogo /sdcard/Bootlogo 

Выглядит просто, но я не имею ни малейшего представления, как получить строку Bootlogo С d:\Android\XDA\Bootlogo

Я надеюсь, что вы, ребята, понимаете. Большое спасибо.

ответ

0

Учитывая командной строку

c:\adbpush.bat d:\Android\XDA\Bootlogo 

Тогда это должно работать для вас:

::adbpush.bat 
@echo off 
cd /d "c:\adb" 
adb push %~1 \sdcard\%~nx1 
+0

Nice Отрывок, на самом деле мне нужно изменить его немного, чтобы сделать его работы ADB толчок " % ~ 1 ""/sdcard /% ~ nx1 " – Yokowasis

+0

Спасибо. Да, кавычки необходимы для длинных элементов имени файла - ваш пример их не использовал, и я не мог предположить, что инструмент adb их поддерживал, поэтому я их оставил. Рад, что это тебе помогло. – foxidrive

1
for /f "delims=" %%a in ("%~1") do set yourstring=%%~nxa 
echo %yourstring% 

shoud получить эту информацию для вас.

0

В качестве альтернативы вы можете получить его из пакетного файла с помощью PowerShell разделенного пути функции -Leaf.

Команда

c:\adbpush.bat d:\Android\XDA\Bootlogo 

adbpush.bat

@ECHO OFF 
start /b powershell -command "$a = Split-Path -Leaf -Path %1;Write-Host $a" 
PAUSE 

Результат

Bootlogo 
Смежные вопросы