Batch, quelques soucis

Bonjour,

J'aimerai faire un fichier bat permettant de modifier les paramètres d'un serveur Minecraft Bukkit. J'aimerai juste savoir comment faire pour ne pas que l'utilisateur marque "allow-nether=true" j'aimerai qu'il marque "True" et l'inscrire sur un fichier texte qui fini par "allow-nether=true. j'espère que vous me comprennez

12 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    avec > plutot que >>, le fichier est écrasé
    echo allow-nether=%prenom% > server.properties
    1. Parcontre pour enlever tout le fichier texte pour ne pas avoir de problème je ne sais pas comment faire
      1. Contributeur
        oui et si tu veux enlever la ligne avant, tu peux faire:
        rename server.properties server.properties.tmp 
        find /v "allow-nether="  < server.properties.tmp > server.properties
        1. J'ai peut être une idée : set /p prenom=Nether, True ou False?:

          echo allow-nether=%prenom% >> server.properties
          1. C'est plus compliqué que ça n'y parait... il faudrait réécrire tout le fichier à chaque fois, mais si le reste ne change pas, il faut juste le mettre en brut.

            Je te propose de décomposer en deux fichiers:
            tu aurais un fichier avec la base, dans ton cas toutes les lignes, sauf la premiere
            Et le deuxième que tu créerais en te servant du premier en passant le paramètre que tu veux (vrai ou faux)

            En batch,

            soit le fichier test.bat
            @echo off  
            set res=false  
            if %1 == true set res=true  
            echo %res%  
            copy base.txt res.txt  
            echo TITI=%res% >> res.txt  
            exit  
            


            Avec:
            le fichier base.txt qui contient les info's de base (qui ne seront pas modifiées)
            le fichier res.txt qui sera le fichier rendu, (celui avec la ligne que tu veux en plus, avec vrai ou faux selon ce que tape l'utilisateur en argument

            pour executer,:

            test.bat true

            ou

            test.bat false
            (sachant que la valeur se mets à false pour n'importe quoi sauf "true"
            1. C'est plus compliqué que ça n'y parait... il faudrait réécrire tout le fichier à chaque fois, mais si le reste ne change pas, il faut juste le mettre en brut.

              Je te propose de décomposer en deux fichiers:
              tu aurais un fichier avec la base, dans ton cas toutes les lignes, sauf la premiere
              Et le deuxième que tu créerais en te servant du premier en passant le paramètre que tu veux (vrai ou faux)
              1. Non, c'est ça le fichier:

                allow-nether=true
                level-name=world
                enable-query=false
                allow-flight=false
                server-port=25565
                level-type=DEFAULT
                enable-rcon=false
                level-seed=
                server-ip=
                max-build-height=256
                spawn-npcs=true
                white-list=false
                spawn-animals=true
                online-mode=true
                pvp=true
                difficulty=1
                gamemode=0
                max-players=20
                spawn-monsters=true
                generate-structures=true
                view-distance=10
                motd=A Minecraft Server
                1. Le fichier texte ne contient que cette ligne ? parce que sinon, celà implique de remplacer la ligne qui correpond à chaque fois.