Verificar se O Diretorio Existe
Moderador: Moderadores
-
Rogerio_SG
- Usuário Nível 1

- Mensagens: 36
- Registrado em: 23 Nov 2004 16:40
Verificar se O Diretorio Existe
Ola Pessoal;
Alguem pode me ajudar a resolver uma problema aqui, quero verificar a existencia de um diretorio no linux.
A funcao da CA-Tools ISDIR(), funciona no MSDOS, porem qdo compilo o programa com xharbour para ser usado no linux da pau..
Agradeco desde ja.
Rogerio
Alguem pode me ajudar a resolver uma problema aqui, quero verificar a existencia de um diretorio no linux.
A funcao da CA-Tools ISDIR(), funciona no MSDOS, porem qdo compilo o programa com xharbour para ser usado no linux da pau..
Agradeco desde ja.
Rogerio
Prezado Colega
Já tentou a DIRCHANGE() da ClipperTools ?
Se você conseguir mudar para o diretório é porque existe, senão, não existe.
Até logo.
Marcelo
Já tentou a DIRCHANGE() da ClipperTools ?
Se você conseguir mudar para o diretório é porque existe, senão, não existe.
Até logo.
Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
-
Rogerio_SG
- Usuário Nível 1

- Mensagens: 36
- Registrado em: 23 Nov 2004 16:40
-
evolver
- Membro Master

- Mensagens: 189
- Registrado em: 28 Ago 2004 01:02
- Localização: Cruz Alta - RS
- Contato:
infelizmente ainda pra linux o suporte é muito fraco.
Tente o seguinte
Meio tosco isso mas tou usando um detalhe do linux que é quando um comando não existe ou responde errado o bash devolve o nome do comando no console. Portanto se não existir o diretório ele vai responder algo como
ls: File or directory not found (ou em portugues dependendo da sua distro)
Tente o seguinte
Código: Selecionar todos
run ls nome_do_dir > ls.txt
v_ls=memoread("ls.txt")
if left(v_ls,2)="ls"
? "diretorio nao existe"
else
? "diretorio existe"
endif
ls: File or directory not found (ou em portugues dependendo da sua distro)
Sergio "Evolver" Fagundes
CURVE-SE DIANTE DE MIM SER INSIGNIFICANTE, POIS EU SOU ROOT
Só respondo em PVT perguntas relativas ao que eu faço. Qualquer outra dúvida favor postar no fórum.
Peço aos veteranos que antes de responder a uma pergunta repetida dêem uma pesquisada e instruam a quem perguntou a fazer o mesmo.
CURVE-SE DIANTE DE MIM SER INSIGNIFICANTE, POIS EU SOU ROOT
Só respondo em PVT perguntas relativas ao que eu faço. Qualquer outra dúvida favor postar no fórum.
Peço aos veteranos que antes de responder a uma pergunta repetida dêem uma pesquisada e instruam a quem perguntou a fazer o mesmo.
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
Verificar se O Diretorio Existe
Boa tarde a todos.
Estou tentando usar a função ISDIR() para testar a existência ou não de uma subpasta.
Da primeira vez, ela retorna .F., então crio a mesma com MAKEDIR(). Porém, em caso de atualização da mesma, ao testar de novo se a subpasta existe, dá .F. de novo mesmo com a pasta criada, causado um erro DOS 5.
Tem algo que se possa tentar ou o Harbour tem alguma função equivalente, já que essa é herança do Clipper?
Qualquer dica, agradeço.
Saudações,
Mario.
Estou tentando usar a função ISDIR() para testar a existência ou não de uma subpasta.
Da primeira vez, ela retorna .F., então crio a mesma com MAKEDIR(). Porém, em caso de atualização da mesma, ao testar de novo se a subpasta existe, dá .F. de novo mesmo com a pasta criada, causado um erro DOS 5.
Tem algo que se possa tentar ou o Harbour tem alguma função equivalente, já que essa é herança do Clipper?
Qualquer dica, agradeço.
Saudações,
Mario.
- Mario Mesquita
- Usuário Nível 4

- Mensagens: 613
- Registrado em: 08 Dez 2009 13:47
- Localização: Rio de Janeiro
Verificar se O Diretorio Existe
Voltei, amigos.
Resolvi com ISDRIRECTORY(). Tem que testar sem a contrabarra final, só usá-la no MAKEDIR().
Então fiz duas variáveis, uma para teste da subpasta e outra para criação. Tosco, mas funcionou.
Sds,
Mario.
Resolvi com ISDRIRECTORY(). Tem que testar sem a contrabarra final, só usá-la no MAKEDIR().
Então fiz duas variáveis, uma para teste da subpasta e outra para criação. Tosco, mas funcionou.
Sds,
Mario.
Verificar se O Diretorio Existe
No windows eu utilizo assim:
Código: Selecionar todos
IF File("C:\TEMP\Mapas\NUL")- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Verificar se O Diretorio Existe
hbmk2 -find dir
...
Harbour core (installed):
ADir()
CurDir()
DirChange()
Directory()
DirRemove()
hb_DirBase()
hb_DirBuild()
hb_DirCreate()
hb_DirDelete()
hb_Directory()
hb_DirExists()
hb_DirRemoveAll()
hb_DirScan()
hb_DirSepAdd()
hb_DirSepDel()
hb_DirSepToOS()
hb_DirTemp()
hb_DirUnbuild()
hb_FNameDir()
hb_gzDirect()
hb_vfDirectory()
hb_vfDirExists()
hb_vfDirMake()
hb_vfDirRemove()
hb_vfDirSpace()
MakeDir()
__Dir()
__hbdoc_DirLastModified()
__hbdoc_LoadDir()
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/

