2015-08-31 15 views
5

Napisałem bardzo prosty plik wsadowy, który kieruje wyjście do pliku. Oto ciało tekst:Czy istnieje limit rozmiaru plików wsadowych?

DATE /T > FileTreeList.txt 
TIME /T >> FileTreeList.txt 
cd >> FileTreeList.txt 
tree /f /a >> FileTreeList.txt 

Kiedy uruchomić plik wsadowy w katalogu, który ma wiele plików i folderów, plik wyjściowy (FileTreeList.txt) obcina przy ~ 621KB. Jeśli uruchomię plik wsadowy z trybu poleceń i skierujemy dane wyjściowe do pliku, otrzymam te same wyniki. Jeśli jednak pozwolę, aby wyniki były wyświetlane na ekranie, pokazuje ono wszystkie wyniki.

Dlaczego tak się dzieje i jak to naprawić?

+3

Czy uzyskasz takie same wyniki, jeśli wszystkie polecenia zostaną zapisane w nawiasach i tylko raz otworzysz plik FileTreeList.txt w celu napisania? '(data/t i czas/t & cd i drzewo/f/a)> FileTreeList.txt' – rojo

+0

Czy jesteś pewien, że plik wsadowy z powyższymi 4 wierszami działa z tymi samymi uprawnieniami (= to samo konto użytkownika), jak przy uruchamianiu ostatnie polecenie ręcznie z poziomu wiersza poleceń, a wyniki są wyświetlane w oknie? Jest to ważne w przypadku uprawnień dostępu do wszystkich katalogów, które mogą być wyjaśnieniem dla różnych list drzew. – Mofi

+0

Próbowałem twoich czterech linii w pliku wsadowym, przełączając bieżący katalog najpierw na katalog główny dysku C: i zapisując wynik czterech poleceń do 'F: \ Temp \ FileTreeList.txt' na Windows 7 x64. Plik listy miał 8,3 MB po zakończeniu wykonywania pliku wsadowego zawierającego całe drzewo. – Mofi

Odpowiedz

1

Prawdopodobnie dysk twardy jest pełny, a jedynie ma ~ 621KB wolnej przestrzeni;)

0

myślę, że jest to drzewo z bieżącego folderu. Jeśli chcesz mieć większy plik, spróbuj wpisać% HOMEDRIVE% i wypisz wszystkie foldery/pliki na dysku. Wypróbuj ten kod:

@rem Turn the command line (C:>COMMAND before every command) 
@echo off 
rem Go to the homedrive (if not currently in) 
if "%cd:~0,1%"=="%homedrive:~0,1%" call %homedrive:~0,1%: 
rem go to the root of homedrive 
cd %HOMEDRIVE% 
rem execute your code 
DATE /T > FileTreeList.txt 
TIME /T >> FileTreeList.txt 
cd >> FileTreeList.txt 
tree /f /a >> FileTreeList.txt 
Powiązane problemy