«Το σύστημα δεν μπορεί να εντοπίσει το καθορισμένο αρχείο», όταν γίνεται επίκληση subprocess.Popen σε python




Προσπαθώ να χρησιμοποιήσετε svnmerge.py να συγχωνεύσει κάποια αρχεία. Κάτω από το καπό που χρησιμοποιεί python, και όταν το χρησιμοποιώ παίρνω ένα λάθος - «Το σύστημα δεν μπορεί να εντοπίσει το καθορισμένο αρχείο». Οι συνάδελφοι στην εργασία εκτελεί την ίδια έκδοση του svnmerge.py, και python (2.5.2, ειδικά R252: 60911) χωρίς πρόβλημα.


Βρήκα [αυτό το link](http://www.nabble.com/problem-under-some-windows-desktop-td15868057.html) , το οποίο περιγράφει το πρόβλημά μου. Προσπαθώντας αυτό που περιγράφεται εκεί, επιβεβαίωσε Python θα μπορούσε να βρει svn (είναι στο δρόμο μου):



```
P: \> python 
Python 2.5.2 (R252: 60911, 21η Φεβρουαρίου του 2008, 13:11:45) [MSC v.1310 32 bit (Intel)] για win32 
Τύπος «βοήθεια», «πνευματικά δικαιώματα», «μονάδες» ή «άδεια» για περισσότερες πληροφορίες. 
>>> os εισαγωγής 
>>> i, k = os.popen4 ( svn --version) 
>>> i.close () 
>>> k.readline () 
'Svn, έκδοση 1.4.2 (r22196) \ n' 

```

Κοιτάζοντας τον κωδικό svnmerge.py, όμως, παρατήρησα για τις εκδόσεις python 2.4 και άνω θα ακολουθούσε μια διαφορετική πορεία εκτέλεσης. Αντί να επικαλούνται os.popen4 () χρησιμοποιεί subprocess.Popen (). Προσπαθώντας να αναπαράγει το σφάλμα:



```
C: \> python
Python 2.5.2 (R252: 60.911, 21η Φεβρουαρίου του 2008, 13:11:45) [MSC v.1310 32 bit (Intel)] για Win32 Τύπος βοήθεια, πνευματικά δικαιώματα, μονάδες ή άδεια για περισσότερα πληροφορίες.
>>> υπο-εισαγωγή
>>> ρ = subprocess.Popen ( --version svn, stdout = subprocess.PIPE, 
>>> close\_fds = False, stderr = subprocess.PIPE)
Traceback (πιο πρόσφατη κλήση τελευταία):
 File , line 1, στο 
 Φάκελος C: \ Python25 \ lib \ subprocess.py, γραμμή 594, στο \_\_init\_\_
 errread, errwrite)
 Φάκελος C: \ Python25 \ lib \ subprocess.py, γραμμή 816, στο \_execute\_child
 startupinfo)
WindowsError: [λάθους 2] Το σύστημα δεν μπορεί να βρει το καθορισμένο αρχείο
>>>

```

Προς το παρόν, έχω σχολίασε το 2.4-και υψηλότερης ειδικό κωδικό, αλλά θα ήθελα να βρουν μια κατάλληλη λύση.


Αν δεν είναι προφανής, είμαι ένα πλήρες python αρχάριος, αλλά η Google δεν έχει βοηθήσει. Όλες οι δείκτες;
Είναι ένα σφάλμα, ανατρέξτε στην [τεκμηρίωση της`subprocess.Popen`](http://docs.python.org/lib/node528.html) . Εκεί είτε θα πρέπει να είναι μια `"shell=True`"επιλογή, ή το πρώτο επιχείρημα πρέπει να είναι μια ακολουθία `['svn', '--version']`. Όπως είναι τώρα, `Popen`ψάχνει για ένα εκτελέσιμο το όνομα, κυριολεκτικά,“svn --version”που δεν βρίσκουν.


Δεν ξέρω για ποιο λόγο θα μπορούσε να λειτουργήσει για τους συναδέλφους σας όμως, αν εκτελείτε το ίδιο λειτουργικό σύστημα και την έκδοση της Python ... FWIW μου δίνει το ίδιο μήνυμα λάθους σε έναν υπολογιστή Mac, και έναν από τους δύο τρόπους που έδωσε διορθώσεις που .
εγκατέστησα την τελευταία έκδοση του προγράμματος και εξακολουθούσα να έχω το ίδιο πρόβλημα. τελικά με τη βοήθεια απο το σχετικό [google group](https://groups.google.com/g/devede-forum/c/2thoie_dsxq) του devedeng, κατάλαβα οτι επιλέγω λάθος encoding type για το αρχείο υποτίτλων που θέλω να βάλω στην ταινία.

όταν επέλεξα το σωστό τύπο encoding για το αρχε… μια πιθανη λυση ειναι να δοκιμασεις το εξης:

snap connect clementine:removable-mediaτην πιθανη αυτη λυση την βρηκα στην πρωτη απαντηση (2ο post μαζι με την original ερωτηση) του παρακατω github ερωτηματος:

[clementine does not read usb drive](https://github.com/kz6fittycent/clementine/issues/4)

… Ενώ μόδας, η λέξη-κλειδί κόλπο αναθεώρηση ενημερώνει μόνο το αρχείο όταν έχει αλλάξει σε αυτή την αναθεώρηση - αν δεν αλλάξει το αρχείο, τότε θα συνεχίσει να αντικατοπτρίζει την παλιά αναθεώρηση.


Αν θέλετε το λογισμικό να αντανακλά πάντα το συνολικό αριθμό αναθεώρησης, τότε θα πρέπει να σκαλίζω το [σχετικό SVN καταχωρήσεις αρχείο](http://svnbook.red-bean.com/en/1.1/ch08s03.html) και αποσυμπιέστε το, το οποίο δεν είναι πάρα πολύ δύσκολο (αυτό είναι ένα αρχείο XML).


Wikipedia το κάνει αυτό στη [σελίδα τους εκδοχή](https://en.wikipedia.org/wiki/Special:Version) για να δείξει την αναθεώρηση του λογισμικού που τρέχει ζωντανά? [ο κώδικας είναι εδώ](https://svn.wikimedia.org/svnroot/mediawiki/trunk/phase3/includes/specials/SpecialVersion.php) - αναζητήστε το **getSvnRevision ()** μέθοδο. <p>το .net 4.0 επιτρέπει στα πρωτεύοντα σύνολα interop (ή μάλλον, τα bits που χρειάζεστε) να ενσωματωθούν στη συνέλευση σας, ώστε να μην χρειάζεται να τα αναπτύξετε παράλληλα με την εφαρμογή σας.</p><p>για οποιονδήποτε λόγο, αυτή η συνέλευση δεν μπορεί να ενσωματωθεί - αλλά αυτό ακούγεται σαν να μην είναι πρόβλημα για εσάς. ανοίξτε την καρτέλα ιδιότητες για τη συνέλευση στο visual studio 2010 και ορίστε "ενσωμάτωση τύπων interop" σε "false".</p><p>edit: δείτε επίσης την <a href="https://stackoverflow.com/a/4553402/641833">απάντηση</a> του michael gustus, καταργώντας το επίθημα <code>class</code> από τους τύπους που χρησιμοποιείτε.</p> νομίζω ότι ο 5.13 δεν είναι ακόμη σταθερός(είναι σε στάδιο rc εκδόσεων απ’ ότι βλέπω) κι έτσι εκτός του ότι δεν είναι βέβαιο ότι θα λυθεί το πρόβλημά σου μπορεί να δημιουργηθούν και άλλα περισσότερα. καλύτερα νομίζω είναι(αφού όπως γράφεις το πρόβλημα δημιουργήθηκε μετά την τελευταία αναβάθμιση του … δόθηκε λύση με αυτό το [post](https://ubuntu-mate.community/t/pluma-color-scheme-file-location/23088/2?u=obaino) του [ubuntu mate community](https://ubuntu-mate.community/) και το μοιράζομαι. καλησπέρα! μπορείς να πειράξεις το αρχείο /etc/pacman.conf

μπορείς να προσθέσεις την γραμμή:

ignorepkg=linux

αν είναι ένα απλό πακέτο ή

ignoregroup=gnome

αν είναι group πακέτων.

η πηγή της λύσης [arch wiki pacman configuration](https://wiki.archlinux.org/index.php/pacman#configuration)

παρ όλα αυτά, με προσοχή ποια πακέτα θα σταματήσεις!

[image] sudo sensors-detect έχω κάνει. δε με νοιαζουν οι δίσκοι τον επεξεργαστή θέλω…

η λύση βρέθηκε …

για τους φίλους που έχουν kde και δεν τους δουλεύει το applet thermal monitor να κάνουν απεγκατάσταση το πακέτο ksysguard restart και μετά ξανά εγκατάσταση είχα το ίδιο πρόβλημα με αρχεία zip που κατέβαζα παλιότερα από εκπαιδευτικές ιστοσελίδες. έχω linux mint με διαχειριστή αρχείων τον thunar. έκανα προσθήκη “προσαρμοσμένης ενέργειας” (επεξεργασία –> ρυθμίσεις προσαρμοσμένων ενεργειών –> προσθήκη νέας), ώστε με δεξί κλικ να αποσυμπιέζω με τη σωστή κωδ… επανέρχομαι μετά από 10 μέρες αδράνειας στο θέμα. το μόνο που άλλαξε είναι ενα update στο fedora 34 με πυρήνα 5.11.16. το πρόβλημα παραμένει όμως σκέφτηκα μια λύση που δούλεψε.

πηγαίνουμε στον φάκελο /opt

δημιουργούμε ένα αρχείο touchpadfix.py :

import os

while os.system('cat /proc/bus/input/de…