DedSec Project

command not found — DedSec Project

command not found: πού αναζητείται η εντολή Αναγνώριση της πραγματικής αποτυχίας Το shell ψάχνει εκτελέσιμα μέσω PATH εκτός αν δώσεις διαδρομή. Ίσως δεν υπάρχει πρόγραμμα, λείπει το…

command not found: πού αναζητείται η εντολή

Αναγνώριση της πραγματικής αποτυχίας

Το shell ψάχνει εκτελέσιμα μέσω PATH εκτός αν δώσεις διαδρομή. Ίσως δεν υπάρχει πρόγραμμα, λείπει το directory από PATH, έγινε typo ή το script χρησιμοποιεί εντολή άλλου OS. Η εγκατάσταση πακέτου δεν είναι πάντα η πρώτη λύση.

Ασφαλής αρχικός έλεγχος

printf '%s\n' "$PATH"
command -v python
command -v python3
uname -s

Διόρθωση αιτίας χωρίς παράκαμψη προειδοποίησης

Σε Termux χρησιμοποίησε τα δικά του pkg repos και έλεγξε pkg search NAME / pkg show PACKAGE. Σε PowerShell χρησιμοποίησε Get-Command και $env:Path· σε cmd.exe where NAME. Μην βάζεις '.' ή world-writable directory στο PATH.

Τεκμηρίωση: https://www.gnu.org/software/bash/manual/html_node/Command-Search-and-Execution.html

Διάγνωση πριν από οποιαδήποτε εγκατάσταση

Το shell ψάχνει ονόματα προγραμμάτων στις διαδρομές του PATH, εκτός αν γράψεις συγκεκριμένο ./όνομα ή απόλυτο μονοπάτι. Δοκίμασε:

printf 'PATH=%s\n' "$PATH"
command -v python3 || printf 'Δεν βρέθηκε python3\n'
type -a python3 2>/dev/null || true

Αν το command -v δεν επιστρέψει διαδρομή, το πρόγραμμα λείπει από το συγκεκριμένο PATH ή δεν υπάρχει στο σύστημα. Αν λειτουργεί στο τερματικό αλλά όχι σε script ή GitHub Action, σύγκρινε το περιβάλλον εκτέλεσης: μη διαδραστικά shells συχνά φορτώνουν διαφορετικά αρχεία ρυθμίσεων.

Τρία διαφορετικά σενάρια

Λανθασμένο όνομα: σε Linux μπορεί να υπάρχει python3, όχι python. Εκτελέσιμο σε άλλον φάκελο: εντόπισε το πραγματικό μονοπάτι και δες αν αυτός υπάρχει στο PATH. Πρόγραμμα που δεν εγκαταστάθηκε: βεβαιώσου ποιο πακέτο παρέχει τη συγκεκριμένη εντολή πριν εγκαταστήσεις οτιδήποτε. Το ./script.sh δεν χρησιμοποιεί PATH για τον ίδιο τον φάκελο, αλλά απαιτεί έγκυρα δικαιώματα και interpreter.

Termux και Windows

Στο Termux χρησιμοποίησε αναζήτηση pkg search ΟΝΟΜΑ και πληροφορίες pkg show ΠΑΚΕΤΟ στο δικό του repository. Μην αντιγράφεις χωρίς έλεγχο οδηγίες για Debian ή Ubuntu. Σε PowerShell έλεγξε Get-Command python -All και $env:Path. Σε cmd.exe το αντίστοιχο είναι where python. Μην βάζεις τον τρέχοντα κατάλογο πρώτον στο PATH: μπορεί να εκτελεστεί άλλο αρχείο με το ίδιο όνομα αντί για το προβλεπόμενο πρόγραμμα.