Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] выравниваемые текста в bat

Ответить
Настройки темы
CMD/BAT - [решено] выравниваемые текста в bat

Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


с помощью батника генерируется txt файл, как сделать, чтобы было нормальное выравнивание?
1. L1 0306.zip 26652 КБ GP
2. L1 0310.zip 17768 КБ GP
3. L1 2567.zip 35539 КБ GP
4. L2 0306.zip 8883 КБ GP
5. L3 0306.rar 8883 КБ GP
6. L3 0307.rar 1 КБ GP

Как сделать чтобы было нормальное выравнивание обьема по правому краю?
А именно вот так:

1. L1 0306.zip 26652 КБ GP
2. L1 0310.zip 17768 КБ GP
3. L1 2567.zip 35539 КБ GP
4. L2 0306.zip 8883 КБ GP
5. L3 0306.rar 8883 КБ GP
6. L3 0307.rar 1 КБ GP

Отправлено: 21:03, 01-07-2013

 

Старожил


Сообщения: 352
Благодарности: 119

Профиль | Отправить PM | Цитировать


проще всего – вставлять таб

Отправлено: 22:47, 01-07-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата NibelungXXX:
с помощью батника …»
И где код?

Отправлено: 23:10, 01-07-2013 | #3


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата kiripanda:
проще всего – вставлять таб »
не поможет, обьем изменяется каждый раз и меняет расположение на чуть чуть, он то больше, то меньше))

Цитата Iska:
И где код? »
я думал просто пример приведете а я сам вставлю) а так вот)

Код: Выделить весь код
@echo off
for %%i in ("%cd%") do set "name=%%~nxi"
for %%i in (*.rar *.zip) do set /a count+=1
(echo имя %name%&echo количество %count%)>"%name%.txt"
>>"%name%.txt" echo 	^<№^>	^<Имя файла^>		^<Обьем^>		марка
set "count="
for %%i in (*.rar *.zip) do (
set /a count+=1
set /a size=%%~zi/1024
>>"%name%.txt" call echo %%count%%		%%i		%%size%% KB		GP
)

Отправлено: 03:50, 02-07-2013 | #4


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Пробуйте:
читать дальше »
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

for %%i in ("%cd%") do set "name=%%~nxi"
for %%i in (*.rar *.zip) do set /a count += 1

>"%name%.txt" (
	echo Имя:        %name%
	echo Количество: %count%
	echo.
	
	call :EchoL "№"         10
	call :EchoS
	call :EchoL "Имя файла" 30
	call :EchoS
	call :EchoL "Обьем"     20
	call :EchoS
	call :EchoL "марка"     10
	echo.
	
	call :EchoC "-"         10
	call :EchoS
	call :EchoC "-"         30
	call :EchoS
	call :EchoC "-"         20
	call :EchoS
	call :EchoC "-"         10
	echo.
)

set "count="

for %%i in (*.rar *.zip) do (
	set /a count += 1
	set /a size = %%~zi / 2^10
	
	>>"%name%.txt" (
		call :EchoR "!count!"   10
		call :EchoS
		call :EchoL "%%~i"      30
		call :EchoS
		call :EchoR "!size! KB" 20
		call :EchoS
		call :EchoL "GP"        10
		echo.
	)
)

endlocal
exit /b 0
rem ==========================================================================

rem ==========================================================================
:PadLeft
	setlocal enableextensions enabledelayedexpansion
	
	set sOut=%~0
	set sVar=%~1
	set iCount=%~2
	
	for /l %%i in (1, 1, %iCount%) do set sSpace= !sSpace!
	set sTempVar=%sVar%%sSpace%
	set sTempVar=!sTempVar:~0,%iCount%!
	
	endlocal & set %sOut:~1%=%sTempVar%
	exit /b
rem ==========================================================================
	
rem ==========================================================================
:PadRight
	setlocal enableextensions enabledelayedexpansion
	
	set sOut=%~0
	set sVar=%~1
	set iCount=%~2
	
	for /l %%i in (1, 1, %iCount%) do set sSpace= !sSpace!
	set sTempVar=%sSpace%%sVar%
	set sTempVar=!sTempVar:~-%iCount%!
	
	endlocal & set %sOut:~1%=%sTempVar%
	exit /b
rem ==========================================================================

rem ==========================================================================
:EchoL
	call :PadLeft "%~1" "%~2"
	<nul set /p sTempVar=%PadLeft%
	exit /b
rem ==========================================================================

rem ==========================================================================
:EchoR
	call :PadRight "%~1" "%~2"
	<nul set /p sTempVar=%PadRight%
	exit /b
rem ==========================================================================

rem ==========================================================================
:EchoS
	<nul set /p sTempVar= 
	exit /b
rem ==========================================================================

rem ==========================================================================
:EchoC
	setlocal enableextensions enabledelayedexpansion
	
	set sChar=%~1
	set iCount=%~2
	
	for /l %%i in (1, 1, %iCount%) do set sString=!sString!%sChar%
	<nul set /p sTempVar=%sString%
	
	endlocal
	exit /b
rem ==========================================================================
Возможный результат:
Цитата:
Код: Выделить весь код
Имя:        0287
Количество: 3

№          Имя файла                      Обьем                марка     
---------- ------------------------------ -------------------- ----------
         1 netscan.zip                                 9256 KB GP        
         2 scdwriter.zip                               1940 KB GP        
         3 smartudm.zip                                 177 KB GP
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:17, 02-07-2013 | #5


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Iska, а в чем причина, вставляя в код на сайт, все красиво, а в блокноте выглядит не ровно и даже когда код редактируешь тут все криво)) как избежать?
Код: Выделить весь код
Имя:        k
Количество: 6

№          Имя файла                      Обьем                марка     
---------- ------------------------------ -------------------- ----------
         1 L3 0306.rar                                43315 KB GP        
         2 L1 0306.rar                                   13 KB GP        
         3 L2 0306.zip                                43315 KB GP        
         4 L1 0306.zip                               129957 KB GP        
         5 L1 0310.zip                                86636 KB GP        
         6 L1 2256.zip                               173292 KB GP

Последний раз редактировалось NibelungXXX, 02-07-2013 в 20:55.


Отправлено: 20:21, 02-07-2013 | #6


Старожил


Сообщения: 459
Благодарности: 138

Профиль | Отправить PM | Цитировать


NibelungXXX, юзать моноширинные шрифты, например Courier New, лично я использую DejaVu Sans Mono
Это сообщение посчитали полезным следующие участники:

Отправлено: 21:42, 02-07-2013 | #7


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Лучше всего смотрится Consolas, 14-16 кеглем — в зависимости от dpi монитора. Причём, желательно полноценный шрифт, содержащий дополнительные глифы.

Отправлено: 06:55, 03-07-2013 | #8


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Iska, Sphinx114 спасибо, все получилось что запланировал

Отправлено: 19:35, 03-07-2013 | #9


Новый участник


Сообщения: 29
Благодарности: 0

Профиль | Отправить PM | Цитировать


Перенес на 7ку данный скрипт и не работает выравнивание, подскажите как к 7ке его адаптировать?, все выводит а конечный результат:
Код: Выделить весь код
Имя:        k
Количество: 6

№          Имя файла                      Обьем                марка     

1.L3 0306.rar           43315 KB GP        
2.L1 0306.rar           13 KBGP        
3.L2 0306.zip           43315 KBGP        
4.L1 0306.zip           129957 KBGP        
5.L1 0310.zip           86636 KBGP        
6.L1 2256.zip           173292 KBGP
Режим вывода команд на экран (ECHO) отключен.
Режим вывода команд на экран (ECHO) отключен. - тоже не нужно чтоб писало

Последний раз редактировалось NibelungXXX, 07-07-2013 в 11:23.


Отправлено: 10:51, 07-07-2013 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] выравниваемые текста в bat

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Как записать в txt файл большой кусок текста с помощью bat Андрей_Угаров@vk Скриптовые языки администрирования Windows 17 15-12-2022 18:47
CMD/BAT - как сделать .bat который выполнит поиск нужного текста с заменой не нужного на нужный ***b.m.m.c.b*** Скриптовые языки администрирования Windows 3 01-03-2018 09:53
CMD/BAT - [решено] CMD/BAT - С помощью bat-ника найти и удалить текст в файле InVariable Скриптовые языки администрирования Windows 4 22-05-2015 20:06
CMD/BAT - Поиск и замена текста через bat Lilless Скриптовые языки администрирования Windows 0 28-02-2012 02:08
CMD/BAT - [решено] программа(.bat файл) которая случайным образом запускает .bat файлы из предложенных gangsterovich Скриптовые языки администрирования Windows 1 07-12-2010 06:45




 
Переход