|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] приведение имени файла к 8.3 |
|
|
CMD/BAT - [решено] приведение имени файла к 8.3
|
|
Ветеран Сообщения: 1003 |
Добрый день, возник вопрос
имеется каталог с файлами имена которых первышают 8.3, существует ли возможность привести их к виду 8.3. Отсечь ненужные символы? в имени файла? не потеряв смысла первых 8 символов имени. не устраивает так дает не верный результат пример: |
|
|
------- Отправлено: 15:09, 16-03-2009 |
|
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать tr011_tmn, скопируйте приведенный скрипт в редактор и сохраните его под каким нибудь длинным именем и в папке с длинным именем, а затем запустите его. Посмотрите результат и выберите себе нужный.
@echo off echo %%0 =%0 echo %%~0 =%~0 echo %%~f0 =%~f0 echo %%~s0 =%~s0 echo %%~d0 =%~d0 echo %%~p0 =%~p0 echo %%~n0 =%~n0 echo %%~x0 =%~x0 echo %%~a0 =%~a0 echo %%~t0 =%~t0 echo %%~z0 =%~z0 echo %%~dp0 =%~dp0 echo %%~nx0 =%~nx0 echo %%~sn0 =%~sn0 echo %%~sx0 =%~sx0 echo %%~dpn0 =%~dpn0 echo %%~snx0 =%~snx0 echo %%~ftza0 =%~ftza0 pause>>nul |
|
Отправлено: 15:40, 16-03-2009 | #2 |
|
Ветеран Сообщения: 1003
|
Профиль | Отправить PM | Цитировать Цитата gora:
%0 ="C:\Documents and Settings\tr011\Рабочий стол\nametest\nametestcmd.cmd" %~0 =C:\Documents and Settings\tr011\Рабочий стол\nametest\nametestcmd.cmd %~f0 =C:\Documents and Settings\tr011\Рабочий стол\nametest\nametestcmd.cmd %~s0 =C:\DOCUME~1\tr011\0016~1\nametest\NAMETE~1.CMD %~d0 =C: %~p0 =\Documents and Settings\tr011\Рабочий стол\nametest\ %~n0 =nametestcmd %~x0 =.cmd %~a0 =--a------ %~t0 =16.03.2009 18:06 %~z0 =361 %~dp0 =C:\Documents and Settings\tr011\Рабочий стол\nametest\ %~nx0 =nametestcmd.cmd %~sn0 =NAMETE~1 %~sx0 =.CMD %~dpn0 =C:\Documents and Settings\tr011\Рабочий стол\nametest\nametestcmd %~snx0 =NAMETE~1.CMD %~ftza0 =--a------ 16.03.2009 18:06 361 C:\Documents and Settings\tr011\Рабочий стол\nametest\nametestcmd.cmd |
|
|
------- Отправлено: 16:10, 16-03-2009 | #3 |
|
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Цитата tr011_tmn:
Цитата tr011_tmn:
|
||
|
Отправлено: 21:18, 16-03-2009 | #4 |
|
Ветеран Сообщения: 1003
|
Профиль | Отправить PM | Цитировать Цитата gora:
Существует ли возможность обрезать имя до 8 символов. |
||
|
------- Отправлено: 22:42, 16-03-2009 | #5 |
|
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Цитата tr011_tmn:
@Echo off
SetLocal enabledelayedexpansion
Set "Folder=D:\Test long name"
Echo.
Echo оригинальные имена
For /f %%a in ('Dir "%Folder%" /B /A-D') Do echo %%a
Echo.
Echo имена формата 8.3
For /f %%a in ('Dir "%Folder%" /B /A-D') Do echo %%~snxa
Echo.
Echo имена обрезанные до длины 8 символов
For /f %%a in ('Dir "%Folder%" /B /A-D') Do (
Set TempName=%%~na
Echo !TempName:~0,8!%%~xa
)
Pause>nul
|
|
|
Последний раз редактировалось gora, 16-03-2009 в 22:59. Отправлено: 22:47, 16-03-2009 | #6 |
|
Ветеран Сообщения: 1003
|
Профиль | Отправить PM | Цитировать gora, спасибо все получилось и даже более чем
|
|
------- Отправлено: 07:40, 17-03-2009 | #7 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| CMD/BAT - [решено] Изменение имени файла при копировании | shpunt | Скриптовые языки администрирования Windows | 2 | 10-11-2009 13:44 | |
| CMD/BAT - [решено] Раскрытие имени файла во вложеном For | dARKest | Скриптовые языки администрирования Windows | 7 | 17-07-2009 00:15 | |
| [решено] Получить максимальное число (в имени файла) | D_Master | AutoIt | 2 | 11-06-2009 19:03 | |
| Интерфейс - [решено] цвет шрифта в имени файла | Dimych_74 | Microsoft Windows 2000/XP | 2 | 11-01-2009 21:29 | |
| [решено] Как запрепить запуск программы по имени файла | AlxCruel | Microsoft Windows 2000/XP | 10 | 05-04-2006 08:58 | |
|