Opérations sur les fichiers textes ( lecture , écriture, invertions de lignes etc )

Contenu du snippet

L'utilisation de $read -l etc étant assez fastidieuses, je propose une série d'aliases qui simplifieront les taches !
genre //echo $active $textline( fichier.txt , 12 ) => renvoie la ligne 12 du fichier.txt

/deltextline fichier.txt 12 => supprime la ligne 12 du fichier
/addtextline fichier.txt 12 texte ke j'insere => insere le texte en ligne 12
/rtextline fichier.txt 12 texte que je remplace => remplace le texte ligne 12
/invtextline fichier.txt 11 12 => inverse les lignes 11 et 12
/deplacetextline 12 14 => déplace la ligne 12 à la 14
/see fichier.txt => affiche le fichier avec numéros de ligne
/sendtextfile pseudo fichier.txt => envoie l'intégralité du fichier à pseudo

Source / Exemple :


textline {
  if ( $2 <= $lines( $1 ) ) {
    var %o -l $+ $calc( $2 )
    var %ptr $read %o $1
    if ( %ptr == $null ) { return - }
    else { return %ptr }
  }
  else {
    return $null
  }
}

deltextline {
  var %o -dl $+ $2
  write %o $1
}

addtextline {
  if ( $3 != $null ) {
    var %o -il $+ $2
    write %o $1 $3-
  }
}
rtextline { 
  deltextline $1 $2
  addtextline $1 $2 $3-
}

invtextline {
  var %p $textline( $1 , $2 )
  rtextline $1 $2 $textline( $1 , $3 )
  rtextline $1 $3 %p 
}

deplacetextline {
  if ( $3 != $2 ) {
    var %p $textline( $1 , $2 ) 
    deltextline $1 $2
    addtextline $1 $3 %p
  }
}

see { 
  var %i 1
  var %l $lines( $1 ) 
  while ( %i <= %l ) {
    echo $active %i - $textline($1,%i)
    inc %i 1
  }
}

sendtextfile {
  var %i 1
  var %l $lines($2)
  while ( %i <= %l ) {
    msg $1 $textline($2,%i)
    inc %i 1
  }
}

Conclusion :


Pour qu'il n'y ai pas de bugs, s'assurer que la 1ere ligne commence par une phrases qui ne soit pas un nombre !

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.