Aller au contenu

Featured Replies

Posté(e)

bonjours,

j’exécute un fichier.bat pour automatiser la création de répertoires et de fichiers ... bref ca marche bien et depuis longtemps sur mon pc mais quand j’exécute ce .bat via mon pc dans un répertoire partagé du diskstation ( répertoire raccourci qui pointe vers DISKSTATION ) cela ne marche pas ?

c'est très contrariant

Est que quelqu'un pourrai m’éclairer ?

en vous remerciant

Modifié par thetib

Posté(e)
  • Auteur

ha !! ce qui veut dire que c'est mort ???

parce que si il faut que je copie tous sur mon pc pour exécuter le .bat et ensuite que je remette tous sur le syno c'est pas des plus pratique ( ceci dit ca me prendra moins de temps que de tous faire à la main !!! )

Posté(e)

Je sais pas si c'est vraiment impossible, je me suis jamais penché sur la question. J'exécutais un simpe batch d'une ligne depuis le syno, j'ai juste déplacé mon batch pour pouvoir le lancer normalement

Je pense que google pourra plus t'aider la dessus :/

Posté(e)
  • Auteur

bou !!!!! pas simple ca

en faite ce .bat dans un répertoire donné crée des dossiers au nom des fichiers .avi trouvé puis met le .avi dedans et creé un fichier .m3u du même nom

voila le script :

@echo off

setlocal enableDelayedExpansion

for /f %%a in ('dir /b *.avi') do (

set nom=%%a

set nom2=%%~na

if not exist !nom2! mkdir !nom2!

move !nom! !nom2!

(echo #EXTM3U

echo #EXTINF:-1,!nom2!

echo ..usb5divx!nom! ) > !nom2!!nom2!.m3u

)

mettre en dur le chemin absolu des répertoires dans le .bat:

mkdir DISKSTATION<partage>...

qu'est ce qu'il faudrai que je rajoute dans le script ?

Modifié par thetib

Posté(e)

Si je comprend bien tu dépose le .bat dans le dossier et tu l'exécute ensuite.

Dans un dossier "normal" un .bat va etre exécuté avec le dossier comme répertoire par défaut. Ce n'est pas le cas dans le cas d'un dossier accédé avec un nom UNC.

Donc, si tu veux conserver le même comportement, te faudra préfixer dans ton script *tous* les noms de fichiers par %~dp0 (qui contient le chemin complet du dossier ou se situe le script)

Modifié par CoolRaoul

Posté(e)
  • Auteur

Si je comprend bien tu dépose le .bat dans le dossier et tu l'exécute ensuite.

c'est ca ... bon c'est pas simple ni super pratique

je pense que je vais faire autrement pour plus de facilité

merci beaucoup pour ton aide :)

Posté(e)

Donc, si tu veux conserver le même comportement, te faudra préfixer dans ton script *tous* les noms de fichiers par %~dp0 (qui contient le chemin complet du dossier ou se situe le script)

Tu as juste à rajouter le préfixe devant chaque dossier dans ton .bat pour qu'il fasse ce que tu as besoin :)

Rien de bien compliquer :P

Posté(e)

sinon un script (un vrai, en shell ;) ou en perl) exécuté sur le syno, sera beaucoup plus efficace...

Posté(e)

sinon un script (un vrai, en shell ;) ou en perl) exécuté sur le syno, sera beaucoup plus efficace...

...t'auras pas besoin de le déplacer à chaque fois, il suffit de passer le chemin du dossier en argument en l'appelant.

Posté(e)

...t'auras pas besoin de le déplacer à chaque fois, il suffit de passer le chemin du dossier en argument en l'appelant.

Cela dit, ça c'est aussi possible avec un .bat ou .cmd (utiliser %1 dans le script)

  • 1 an après...
Posté(e)

Bonjour,

Merci à tous, tout marche pour moi avec le script ci-dessous mais j'ai cet avertissement DOS pendant la copie :

L'erreur système 85 s'est produite,

Nom de périphérique local déjà utilisé.

est-ce grave docteur ?

(mon système : HP Pavilion, AMD Athlon 64, Win XP familiale Pack 2, Synology DS212+)

@echo off
net use z: DISKSTATIONbdd
cd /d z:
set fichier=mabase.mdb
set jour=%date:~0,2%
set mois=%date:~3,2%
set annee=%date:~6,4%
set ajoutnom=%annee%%mois%%jour%
copy /Y %fichier% sauveJ%ajoutnom%_%fichier%
Posté(e)

Si tu as déjà ton syno mappé en tant que lecteur, alors le "net use ..." te sort une erreur

Retire la ligne, et adapte celle en dessous pour pointer vers le bon lecteur

Posté(e)

Effectivement ce matin un lecteur Z: apparait sur mon poste de travail, la commande " net use z: DISKSTATIONbdd " ne serait donc à n'exécuter qu'une seule fois ?

Posté(e)

<mode cheveu_sur_la_soupe on>

Pourquoi s'emm** avec une lettre de lecteur et ne pas utiliser des noms unc?

@echo off
set BDD=DISKSTATIONbdd
set fichier=mabase.mdb
set jour=%date:~0,2%
set mois=%date:~3,2%
set annee=%date:~6,4%
set ajoutnom=%annee%%mois%%jour%
copy /Y %BDD%%fichier% %BDD%sauveJ%ajoutnom%_%fichier% 

</mode>

Posté(e)

Bonjour,

Avec " net use z: /delete " ça marche une fenêtre DOS s'ouvre toujours mais elle a l'air contente :

Alerte.png

@ synologue : désolé chez moi les noms unc ne sont pas pris en charge

Merci à tous !

Posté(e)

@ synologue : désolé chez moi les noms unc ne sont pas pris en charge

Comment est-ce possible? le support des chemins UNC est intégré à Windows!

Posté(e)

Je n'en sais rien du tout mais ma config est plutôt vintage !

J'ai du mal à te suivre: tu écris que les noms UNC ne sont pas supportés et juste après que tu n'en sais rien! :wacko:

Les chemins UNC *sont* supportés sous XP, suffit d'essayer tu verras.

Posté(e)

Sauf si le réseau n'est pas défini ..... mais est-ce le but du sujet ?

:jesors:

Posté(e)

Sauf si le réseau n'est pas défini ..... mais est-ce le but du sujet ?

:jesors:

D'autant plus que faire communiquer PC et NAS sans le réseau c'est pas gagné

:ouitusors:

Posté(e)

Je ne connaissais rien aux "chemins UNC", maintenant je comprends bien de quoi il s'agit mais c'est juste Windows qui me le dit que "Les chemins d'accès UNC ne sont pas pris(e) en charge" :

Alerte.png

Par ailleurs mon réseau marche très bien, j'ai 3 ou 4 machines clientes du Nas par l'intermédiaire d'un livebox.

Ces chemins fonctionnent très bien avec la plupart de mes logiciels, mais pas dans mes fichers BAT.

Rien n'est simple !

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Qui est en ligne (Afficher la liste complète)

  • Il n’y a aucun utilisateur enregistré actuellement en ligne

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.