Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1

    [Python] Trovare la Home dell'Utente ???

    Come faccio a trovare la home dell'utente in Python ???
    Mi serve il Percorso /home/nomeUtente...
    E' possibile Ricavarlo ???

    Grazie.
    #include <stdio.h>
    int main() { char m[18+1] = "_TeYS_We2^[TWda [f";
    int i = (((3*7))-21); for (; m[i]; i++)
    (i<27) ? m[i]+=(((13)*3)-25) : m[i] -= (7+(i)*(-1));
    puts(m); getchar(); return 0; };

  2. #2
    dipende anche dal contesto in cui lo stai usando.
    ad esempio potresti usare os.listdir('/home') che ti ritorna una lista degli user, se invece stai lavorando proprio nella home di cui ti serve sapere il nome os.getcwd()
    PyGTK GUI programming
    un impegno concreto: eliminare la k dalle tastiere italiane

  3. #3
    Innanzitutto non sempre gli utenti stanno in /home
    E poi e' molto piu' facile...

    ~ = /home/utente
    Proprio come in bash
    Se ad es. vuoi creare in file nella cartella /home/utente/file
    open("~/file", ...);


  4. #4
    Originariamente inviato da Lethalman
    Innanzitutto non sempre gli utenti stanno in /home
    E poi e' molto piu' facile...

    ~ = /home/utente
    Proprio come in bash
    Se ad es. vuoi creare in file nella cartella /home/utente/file
    open("~/file", ...);

    La domanda era diversa però... come ricavare la home dell'utente (o utenti immagino), se il programma lo lanci da root ~ == /
    PyGTK GUI programming
    un impegno concreto: eliminare la k dalle tastiere italiane

  5. #5
    Cmq un root normale ~ = /root

  6. #6
    Utente di HTML.it L'avatar di Pasco
    Registrato dal
    Apr 2002
    Messaggi
    1,559
    si potrebbe fare un parsing del file /etc/passwd oppure usare la variabile d'ambiente $HOME , purtroppo non tutti gli Unix sono uguali , ad esempio come dir utenti , OS X non usa /home ma /Users e /root è /var/root
    PyFanatics

  7. #7
    si potrebbe risolvere con un ciclo elif a seconda del sistema su cui lo script gira. (sys.platform, sys.version)
    PyGTK GUI programming
    un impegno concreto: eliminare la k dalle tastiere italiane

  8. #8
    KornShell, e' inutile fare questi giochi statici perche' le hoem degli utenti possono benissimo cambiare... non e' detto che debbano stare in /home per forza.

    Comunque la migliore soluzione sembrerebbe essere il parsing dell'/etc/passwd...

  9. #9
    Io Ho trovato un modo utilizzando getlogin()

    codice:
    >>> import os
    >>> user = os.getlogin()
    >>> HOME_DIR = "/home/" + user
    Poi ho provato a mettere in un file questo piccolo script...
    Come utente o root funziona...
    Ma poi' l'ho aggiunto a uno dei menu di fvwm il programma parte ma mi da' questo errore...
    codice:
    OS Error:[Error 25] Inappropriate ioctl for device
    Qualcuno a qualche idea di che cosa sia ???
    PoWered by:
    Gentoo 1.5.3 - Kernel 2.6.7
    Debian Sid - Kernel 2.6.7 - Bash 3.0
    Slackware current - Kernel 2.6.7

  10. #10
    Originariamente inviato da Lethalman
    KornShell, e' inutile fare questi giochi statici perche' le hoem degli utenti possono benissimo cambiare... non e' detto che debbano stare in /home per forza.

    Comunque la migliore soluzione sembrerebbe essere il parsing dell'/etc/passwd...
    posso non essere daccordo vero...?

    per me è impossibile fare il parsing di /etc/passwd, potresti scambiare un servizio per uno user, non tutti i sistemi hanno user > 500 (ad esempio)
    PyGTK GUI programming
    un impegno concreto: eliminare la k dalle tastiere italiane

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.