Question SCP Modification du contenu du fichier texte


J'essaie de copier un fichier de la machine A:

apt policy openssh-client
openssh-client:
  Installiert:           1:7.2p2-4ubuntu2.4

à la machine B:

apt-cache policy openssh-client
openssh-client:
    Installiert: 1:5.5p1-6+squeeze5

Sur un:

scp myfile <server>:/myfile
md5sum myfile
2ba67c5e816350d4d2e2e7fd883037e7
file myfile
myfile: Python script, ASCII text executable

Sur B:

md5sum myfile
8883620c2a0878da1db273101b55124d
file myfile
myfile: ASCII Java program text

En regardant dans le fichier texte, il semble que chaque ligne a un espace de plus que la dernière, donc au lieu de:

import argparse, os, sys

from subprocess import check_output

def count_voicemails(dir):
    # find is faster than ls, since it does not check attributes
    command = 'find {}/INBOX -maxdepth 1 | wc -l'
    count   = int(check_output(command.split()))
    return count

Cela ressemble à ceci:

import argparse, os, sys

from subprocess import check_output

 def count_voicemails(dir):
       # find is faster than ls, since it does not check attributes
           command = 'find {}/INBOX -maxdepth 1 | wc -l'
               count   = int(check_output(command.split()))
                   return count

4
2017-08-16 10:15


origine


Êtes-vous sûr de regarder le même fichier? Dans votre commande scp, vous envoyez le fichier à / myfile. Si vous consultez un fichier portant le même nom dans votre répertoire personnel, cela expliquerait le problème. (Surtout si vous avez déjà essayé de copier le fichier dans une fenêtre d'édition vim personnalisée pour répéter les espaces au début des lignes.) - Jenny D
@JennyD: Battez-moi dessus et je suis sûr à 95% que vous pourriez écrire ceci comme une réponse pure et simple :) - Sven♦
Pas que j'ai personnellement vécu cela, ou une version de celui-ci la toux - Jenny D
Et surtout pas passé plusieurs minutes à essayer de comprendre. Non, monsieur. - Jenny D
Pour éviter cette indentation lors du collage dans vim, utilisez set paste. - TonioElGringo


Réponses:


Votre commande scp envoie le fichier à la racine du serveur cible. /myfile. Plus tard, lorsque vous consultez le fichier, vous ne donnez pas le chemin complet. Il semblerait que vous ayez déjà essayé de copier le contenu d'un fichier à l'aide d'un éditeur configuré pour insérer une mise en retrait à partir de la ligne précédente. C'est le fichier que vous consultez.


13
2017-08-16 10:56