afficher qqes lignes d’un fichier

11 sujets de 1 à 11 (sur un total de 11)

  • Lion

      #5082

      Bonjour a tous,

      je cherche un utilitaire qui me permettrait d afficher les premieres lignes d un fichier de facon a en determiner le type.

      en general, quand on double clic sur un fichier inconnu via dopus ou multiview, on a une vue en ascii/binaire/hex mais le pb est que souvent, c est tout le fichier qui est lu et quand il fait plusieurs Mo voir bcp plus, c est tres lent et risque d avoir un out of memory.

      je cherche donc qqe chose qui affiche juste les premieres lignes (il me semble que sous linux, ca doit etre qqechose avec tail).

      Lio

      Admin

      bigdan

        #87085

        type toto hex

        ou type toto number

        (tu arrête l’affichage avec un ctrl-c)

        Sinon sous magellan tu as la commande arexx getfiletype :

        dopus getfiletype ram:testfile.lha te retourne « LHA Archive » par ex

        ou dopus getfiletype ram:picture.jpg id te retourne « JPEG »

        L’inconvénient c’est qu’elle n’identifie que les types de fichiers connus.

        Sharynn

          #87086

          Il faudrait faire un petit programme en ASM ou C…

          :-D

          Amos un jour, Amos Toujours
          -----------------------------------
          AmOS4 - Library Amos sous C (Os3-Os4)

          Admin

          bigdan

            #87087

            Ou 1 ligne de code rebol ou en perl/python, 3 en ARexx…

            Sinon on peut utiliser http://aminet.net/package/util/cli/GrabInFile

            avec un truc style (grab des 128 premiers octets) :

            GrabInFile ram:toto 0 128 ram:truc

            type ram:truc hex

            corto

              #87088

              bigdan a écrit :

              Ou 1 ligne de code rebol ou en perl/python, 3 en ARexx…

              Et en Ruby ? :-) Et bien ça donne ça :

              # rtail.rb

              if ARGV.size == 0

              puts "Nombre d'arguments incorrects"

              puts "rtail filename [nb_lines]"

              else

              # Initialisation du nombre de lignes à afficher (10 par défaut)

              # Si un argument non numérique est saisi alors nb prend la valeur 0

              if ARGV.size > 1

              nb = ARGV[1].to_i

              else

              nb = 10

              end

              # Pour chacune des nb premières lignes, on affiche leur contenu

              file = File.open(ARGV[0], "r")

              if file

              for i in 1..nb

              puts file.gets()

              end

              file.close()

              end

              end

              On doit pouvoir faire mieux et/ou plus concis. Merci pour ce cas pratique, ça m’a permis de me repencher sur l’utilisation de Ruby.

              Admin

              bigdan

                #87089

                Corto : ton exemple ruby suppose un code de retour ligne comme dans du texte non ? Quid si c ‘est du binaire ?

                /me retourne comater

                adrenochrome

                  #87090

                  tant qu’a tomber dans les trucs a la unix, tu as la commande head qui est faite pour ca

                  head -c 100 fichier >ram:tete.morceau.100o

                  si tu as installé geekgadget tu dois deja l’avoir de dispo, sinon tu peux la retrouver dans l’archive textutils

                  corto

                    #87091

                    bigdan: Tu ne comates pas, ta remarque est juste. Cependant, je voulais faire un truc vite fait … et j’avais quand même testé sur un fichier ELF, ça a affiché deux lignes de caractères illisibles (sauf les lettres ELF au début).

                    En fait, tu as raison, je viens d’essayer sur un fichier WAV et ça merdouille, il parcourt tout le fichier.

                    Considérons que mon source est juste une base :)

                    On doit pouvoir lire les 100 premiers octets et les dumper.

                    adrenochrome: Oui, utiliser un outil déjà tout fait et exprès pour ça reste une meilleure solution !

                    pulp

                      #87092

                      Kamelito_L

                        #87093

                        Slt,

                        Sur Amiga68k il y a la library Whatis (whatis.library) livrée et développée par les auteurs de Browser et BrowserII.

                        Il suffit donc sur ces systèmes de l’utiliser.

                        Kamel

                        Lion

                          #87094

                          merci a tous pour vos suggestions !

                          ce que j essaye de faire, c est de savoir si l image vide de 6Go nécessaire pour installer macosx panther via pearpc est bien remplie de 0x00, ce qui correspondrait a un disque dur vide et me permettrait de faire reconnaitre mon installation de macosx a mac-on-linux (qui en l etat n est pas capable de démarrer sur un DVD original de panther :-( ).

                          EDIT : bon bin je l ai quand meme dans le baba car je ne peux decompresser l archive rar de 600Ko sous os4 en raison de la limitation du FFS qui ne supporte pas les fichiers de plus de 4Go (du moins c est ce que je subodore puisque l extraction s arrete aux alentours de 4Go) :'(

                        11 sujets de 1 à 11 (sur un total de 11)

                        • Vous devez être connecté pour répondre à ce sujet.

                        Forums AmigaOS, MorphOS et AROS Général afficher qqes lignes d’un fichier

                        Amiga Impact