Помогите написать скрипт
- Author
- Message
-
Offline
- Posts: 381
- Joined: Wed Sep 28, 2011 3:05 pm
Стоит задача относительно заданного пути создать несколько подпапок, вложенных одна в другую. В принципе на Jscript решается так:
Любопытно, есть ли какой способ избежать цикла (может какими-то внутренними средствами AkelPad можно) чтобы в функцию сразу передать нужный путь в виде строки наподобие "initalPath\subfolder1\subfolder2\" ?
Code: Select all
// Здесь
// initalPath - путь, внутри которого надо сделать подпапки
// subFolders - список подпапок в виде массива
function createSubFolders(initalPath, subFolders) {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var length = subFolders.length;
var i;
for (i = 0; i < length; i++) {
initalPath = initalPath + subFolders[i] + "\\";
if ( fso.FolderExists(initalPath) ) {
continue;
} else {
fso.CreateFolder(initalPath);
}
}
}
-
Offline
- Posts: 2247
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Шелловский костыль SHCreateDirectoryEx
-
Offline
- Posts: 512
- Joined: Sun Sep 15, 2013 8:25 am
- Location: 013 в Тентуре, семь по Спирали, налево от Большой Медведицы
Не совсем понятно, зачем AP должен выполнять функции не свойственные редактору, но ведь там вроде бы естьCuprum wrote:FeyFre
Там для С++, это не то, да и не все версии винды поддерживают.
Ладно, пусть будет цикл, так понятнее..
Code: Select all
AkelPad.Exec
Code: Select all
md .\1\2\3\4\5
-
Offline
- Posts: 1949
- Joined: Sat Mar 06, 2010 7:40 pm
- Location: Poland
Cuprum
Code: Select all
if (AkelPad.Exec("cmd /c md c:\\a\\b\\c\\d", "", 1))
WScript.Echo("Error");
-
Offline
- Posts: 381
- Joined: Wed Sep 28, 2011 3:05 pm
-
Offline
- Posts: 1949
- Joined: Sat Mar 06, 2010 7:40 pm
- Location: Poland
Cuprum
To hide console window, you can use Run method of WshShell object:
To hide console window, you can use Run method of WshShell object:
Code: Select all
var WshShell = new ActiveXObject("WScript.Shell");
if (WshShell.Run("cmd /c md c:\\a\\b\\c\\d", 0 /*hide window*/, 1 /*return error*/))
WScript.Echo("Error");
-
Offline
- Posts: 2247
- Joined: Tue Aug 07, 2007 2:03 pm
- Location: Vinnitsa, Ukraine
Cuprum, честное слово, ты как первый раз замужем.
Code: Select all
var oSys = AkelPad.SystemFunction();
oSys.Call("shell32::SHCreateDirectoryEx" + _TCHAR, 0/*или AkelPad.GetMainWnd()*/, "диск:\\путь\\к\\каталогу\\вася\\пупкин\\штрих\\который\\нужно\\создать", 0);
-
Offline
- Posts: 4
- Joined: Sun Mar 15, 2015 8:16 pm
Прошу помочь.
Доброго времени суток.
Пожалуйста, помогите реализовать такую задачу:
необходимо скопировать в новое окно значение смещения всех строк файла, от начала каждой новой строки.
Мне это очень важно, заранее благодарен всем кто поможет.
Пожалуйста, помогите реализовать такую задачу:
необходимо скопировать в новое окно значение смещения всех строк файла, от начала каждой новой строки.
Мне это очень важно, заранее благодарен всем кто поможет.
-
Offline
- Posts: 4
- Joined: Sun Mar 15, 2015 8:16 pm
Простите, что неясно выразился.
Речь о "смещение в символах". Нужно автоматически пересчитать всё количество символов (в том числе и таких как, например "перевод строки", то есть тотально всё) от начала каждой новой строки и вывести в новое окно только цифры: строка-количество символов в строке; следующая строка плюс предыдущая, и так далее...
Должно выглядеть так, допустим в первой 9 символов и символ перевода строки, далее 10 + количество символов следующей строки и так далее:
10
133
284
Речь о "смещение в символах". Нужно автоматически пересчитать всё количество символов (в том числе и таких как, например "перевод строки", то есть тотально всё) от начала каждой новой строки и вывести в новое окно только цифры: строка-количество символов в строке; следующая строка плюс предыдущая, и так далее...
Должно выглядеть так, допустим в первой 9 символов и символ перевода строки, далее 10 + количество символов следующей строки и так далее:
10
133
284
-
Offline
- Posts: 366
- Joined: Mon Jan 10, 2011 5:28 pm
- Contact: