Rzucam razem plik wsadowy, który wyświetli listę wszystkich katalogów w określonej ścieżce.
W W:/wamp/www/
katalogu mam kilka folderów, które zaczynają się od podkreślenia _
; na przykład _templates
.
Chciałbym, aby wynik wykluczył wszystkie foldery zaczynające się od _
. Nie potrzebuję tego wysiłku, aby być rekurencyjnym.
Mój aktualny katalog w:/wamp/www/
wygląda następująco:
_system
_templates
_assets
Folder1
Folder2
Folder3
Pożądane wyjście echa to:
Folder1
Folder2
Folder3
Mogę uzyskać listę z liczbą, używając następujących, ale oczywiście rzuca mi wszystkie foldery z powrotem. Byłbym wdzięczny za wszelką pomoc. Tak naprawdę nie potrzebuję liczb z tej listy, więc jeśli istnieje bardziej eleganckie podejście, byłbym wdzięczny za wgląd
set acctDir=w:\wamp\www\
set app=setup.exe /cd
set log=w:\wamp\logs\projectlogs.txt
set c=0
For /f %%a in ('dir !acctDir! /B /A /D') do (
set /a c+=1
echo !c! %%a
set dir!c!=%%a
set projectname=%%a
)
windows
command-line
batch-file
Jeffrey S.
źródło
źródło
attrib +h w:/wamp/www/_*
, a pliki zostaną wykluczone z list katalogów.Odpowiedzi:
Możesz przetestować podkreślenie gdzieś w pętli FOR.
Ta strona zawiera kilka dobrych wskazówek na temat manipulacji ciągami w CMD. http://www.dostips.com/DtTipsStringManipulation.php
źródło
Jeśli wszystko, czego potrzebujesz, to lista, pełny kod może być
Służy
findstr
do filtrowania listy i pobierania tylko linii, które nie zawierają (/v
) na początku linii (/b
) podkreśleniaźródło
Jeśli ten system to co najmniej Windows 7 / Server 2008 R2, możesz uruchomić następujące polecenie interaktywnie w programie Powershell:
Naprawdę zaleca się zebranie partii razem i przejście do PowerShell. Jest następcą cmd (który będzie przestarzały w przyszłości) i jest znacznie bardziej wydajny ze względu na orientację obiektową.
Polecenie pobiera wszystko z katalogu www, które nie zaczyna się od „_”, a następnie przekazuje katalogi w potoku do polecenia select, które zwraca atrybut nazwy katalogów.
Daj mi znać, jeśli chcesz to zautomatyzować lub jeśli to wystarczy.
źródło