Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,
Выше я показа явно для find
14 авг 15, 13:32    [18017716]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
MakeFolder("mkdir /srv/box/test",.info;            пустую папку
MakeFolder("touch /srv/box/test/file.txt",.info;  пустой файл
14 авг 15, 13:53    [18017870]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu
mkdir пропустили ...

Я брал с оригинала.
Как в итоге должно быть? Так?
MakeFolder(cmd,Info,Er)
 
io,line,p
 
p="fileMake"
 
p:(COMMAND="mkdir "_cmd:READONLY)::"PIPE"
 
p
 
p
 
Info="Folder "_cmd_" succesfull make..."
 
q
Что писать при удалении каталога?
14 авг 15, 13:56    [18017900]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,

rm -
14 авг 15, 14:02    [18017931]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu, еще раз спасибо.
14 авг 15, 14:14    [18018014]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Каталог делается...
crtDir(Path)
 
ok,p
 
p="fileMake"
 
p:(COMMAND="mkdir "_Path:READONLY)::"PIPE"
 
p
 
p
 
ok=1
 
q:$q ok
 
q
Хотел бы уточнить детали:
- так ли важно чему равно p?
- есть ли какая-то "обратная связь", получилось или нет?

Смотрели МСМовские $za, $zb, $zc - толку нет...
14 авг 15, 15:48    [18018661]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Есть ли возможность той "трубой" создать все "недостающие" каталоги?
Т.е. часть пути существует... А ее концовка нет.
14 авг 15, 15:56    [18018702]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,
Немножко непонятно что имеется в веду,
а "недостающие" известны заранее ???
14 авг 15, 16:02    [18018745]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu
а "недостающие" известны заранее ???

Да.

В инете нашли
mkdir -p

Оно?
14 авг 15, 16:08    [18018781]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,
Вроде пишут такое.
-p
При указании этой опции перед созданием нового каталога предварительно создаются все несуществующие вышележащие каталоги.
ПРИМЕРЫ Чтобы создать поддерево каталогов tmpdir/temp/dir, надо выполнить команду
mkdir -p tmpdir/temp/dir

Я не использовал.
А для чего нужно это я так и не могу понять ?
Я например когда новую рутину пишу, проверяю если такой
уже нету при записи в каталог.
14 авг 15, 16:22    [18018886]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu
А для чего нужно это я так и не могу понять ?

Дело в том, что мы написали процедуры/функции, аналоги всего, что у нас есть в задаче но не М-стандарта...
Теперь вот нужно написать их аналоги в gt.m. Поскольку в Кащее есть такой метод создания всего, указанного пути и кое кто его использовал в своих программах, нужно повторить и его...
17 авг 15, 08:11    [18026812]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
П.С.М.
Member

Откуда: Из СССР
Сообщений: 466
krvsa
- есть ли какая-то "обратная связь", получилось или нет?
Тут написано (с примером):
Example:
 set p="Files"
 
set e="Errors"
 
open p:(command="find /var/log -type d -print":readonly:stderr=e)::"PIPE"  
GT.M uses the standard system utility find to obtain a list of subdirectories of /var/log, which are read back via the device with handle "Files" with any errors (for example, "Permission denied" messages for sub-directories that the find command cannot process) read back via the device with handle "Errors".
И еще чуть ниже:
STDERR=string

Specifies a device handle for a return pipe to which the created process writes any standard error output. The GT.M process can USE, READ, and CLOSE it, but cannot WRITE to it. When the GT.M process CLOSEs the PIPE device the PIPE device CLOSEs STDERR, if still OPEN.
Т.е. можно использовать стандартный поток ошибок (stderr) чтобы получить сообщение об ошибке (если что-то пошло не так).
Та же mkdir в пишет в stderr ошибки. В случае успешного завершение, никаких сообщений в stderr не будет.
Пример:
GTM>open "blabla":(command="mkdir /tmp/tmp/tmp":readonly:stderr="errorsssss")::"PIPE"
GTM>use "blabla"
GTM>open "errorsssss"
GTM>use "errorsssss"
GTM>read str
GTM>use $PRINCIPAL
GTM>write str
mkdir: невозможно создать каталог "/tmp/tmp/tmp": Не
т такого файла или каталога
GTM>close "errorsssss"
GTM>close "blabla"
PS:
Использование констант "blabla" и "errorsssss" - неявный ответ на вопрос:
krvsa
- так ли важно чему равно p?
17 авг 15, 12:45    [18028296]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
П.С.М.
Member

Откуда: Из СССР
Сообщений: 466
GTM>open "errorsssss"

Лишняя команда :)
17 авг 15, 12:50    [18028330]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
П.С.М.
Т.е. можно использовать стандартный поток ошибок (stderr) чтобы получить сообщение об ошибке (если что-то пошло не так).
Та же mkdir в пишет в stderr ошибки. В случае успешного завершение, никаких сообщений в stderr не будет.

Потестим...
17 авг 15, 14:16    [18028563]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Очередной вопросы...
Как при чтении файла определить, что достигнут конец файла?
Как "перебрать" (получить имена каталогов и файлов) все содержимое каталога?
Как получить атрибуты файла/папки?
Как узнать размер файла?
17 авг 15, 14:18    [18028584]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,
Как при чтении файла определить, что достигнут конец файла?
 q:$zeof
Как "перебрать" (получить имена каталогов и файлов) все содержимое каталога?
fileList(path,Ret,i,Er)
 
io,line,p
 
io=$io
 s 
p="fileList"
 
p:(COMMAND="ls -aF "_path:READONLY)::"PIPE"
 
Ret
 
p
 
i=1:1 Ret(i)=x_$c(13,10) q:$zeof
 c 
p
 
io
 
q
 
;
Как узнать размер файла?
http://webzel.ru/useful/shpargalki/69-kak-yznat-razmer-faula.html
"ТРУБА" вам в помощь почти везде !!!
17 авг 15, 14:39    [18028774]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,
атрибуты командой:
ls -al
17 авг 15, 14:46    [18028826]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu, еще раз спасибо...
17 авг 15, 16:04    [18029425]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu
атрибуты командой:
ls -al
А, что там является атрибутом?
user@gtmsrv:~$ ls /srv/box/ -al
total 407200
drwxrwxrwx 7 root root 4096 Aug 21 16:38 .
drwxr-xr-x 6 root root 4096 May 14 13:00 ..
drwxr-xr-x 7 nobody nogroup 4096 Aug 18 16:38 cEdit
-rwxr--r-- 1 nobody nogroup 60 Jul 28 09:30 com.txt
-rwxr--r-- 1 nobody nogroup 2647683 Aug 21 16:37 gen1.xml
-rwxr--r-- 1 nobody nogroup 4853012 Aug 23 20:29 gen.xml
-rwxr--r-- 1 nobody nogroup 3348 Aug 20 16:01 glb.glb
-rwxr--r-- 1 nobody nogroup 409386706 Aug 9 18:55 gtm.xml
drwxr-xr-x 2 nobody nogroup 4096 Aug 7 16:45 OpenVPN_mcaronov
-rwxr--r-- 1 nobody nogroup 44444 Aug 12 09:12 putty-registry.reg
drwxr-xr-x 10 nobody nogroup 4096 Aug 19 16:49 SockTerm
drwxr-xr-x 2 nobody nogroup 4096 Aug 14 13:59 soi
drwxrwxr-x 3 user user 4096 Aug 14 16:10 test1
24 авг 15, 15:50    [18060171]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
Valeriu
Member

Откуда: Chisinau
Сообщений: 2081
krvsa,

первая колонка это и есть.
24 авг 15, 18:49    [18061111]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Valeriu
первая колонка это и есть.

Однако там атрибутов!
Чего там, что означает?
25 авг 15, 08:09    [18062411]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
DAiMor
Member

Откуда: Volzhsky -> Moscow -> CZ, Brno -> Moscow
Сообщений: 2717
krvsa
Valeriu
первая колонка это и есть.

Однако там атрибутов!
Чего там, что означает?

d - тип файла,
Directory files(d)
Special files
Block file(b)
Character device file(c)
Named pipe file or just a pipe file(p)
Symbolic link file(l)
Socket file(s)

и права доступа
и три группы букв (пользователь, группа и все)
r(ead) - чтение
w(rite) - запись
e(x)ecute - исполнение
25 авг 15, 08:56    [18062529]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
Ясно...
25 авг 15, 09:27    [18062690]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
П.С.М.
Member

Откуда: Из СССР
Сообщений: 466
А следующий вопрос, наверное, будет: как управлять правами доступа к файлам/папкам?

По-ходу гугл выключили.
По ключевым словам "команды linux для начинающих", "linux права доступа", etc находится масса статей, в т.ч. на русском
+
есть встроенный мануал (команда man <и_то_что_хотите_узнать>)

PS: Да и для обсуждения линуксовых утилит (unix систем вообще), вроде как, целый отдельный форум есть.
25 авг 15, 09:30    [18062716]     Ответить | Цитировать Сообщить модератору
 Re: [gt.m] Работа с файловой системой  [new]
krvsa
Member

Откуда: г Волжский
Сообщений: 13246
krvsa
user@gtmsrv:~$ ls /srv/box/ -al
total 407200
drwxrwxrwx 7 root root 4096 Aug 21 16:38 .
drwxr-xr-x 6 root root 4096 May 14 13:00 ..
drwxr-xr-x 7 nobody nogroup 4096 Aug 18 16:38 cEdit
-rwxr--r-- 1 nobody nogroup 60 Jul 28 09:30 com.txt
-rwxr--r-- 1 nobody nogroup 2647683 Aug 21 16:37 gen1.xml
-rwxr--r-- 1 nobody nogroup 4853012 Aug 23 20:29 gen.xml
-rwxr--r-- 1 nobody nogroup 3348 Aug 20 16:01 glb.glb
-rwxr--r-- 1 nobody nogroup 409386706 Aug 9 18:55 gtm.xml
drwxr-xr-x 2 nobody nogroup 4096 Aug 7 16:45 OpenVPN_mcaronov
-rwxr--r-- 1 nobody nogroup 44444 Aug 12 09:12 putty-registry.reg
drwxr-xr-x 10 nobody nogroup 4096 Aug 19 16:49 SockTerm
drwxr-xr-x 2 nobody nogroup 4096 Aug 14 13:59 soi
drwxrwxr-x 3 user user 4096 Aug 14 16:10 test1
Есть ли вариант для вывода даты в нормальном формате цифрами и с годом?
25 авг 15, 10:04    [18062887]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
Все форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M Ответить