CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

invite de commande windows

Trent2
Trent2
Niveau 10
15 novembre 2015 à 21:57:59

Bonjour à tous,

J'ai un projet à faire en java sur la gestion des informations binaires.
Un morceau du programme à réaliser consiste à visualiser les droits d’accès à un fichier.
On nous fourni une classe qui ressemble à ça :


import java.io.File;

public class FileMode {

	private static final String STAT_COMMAND = "stat --format=%f ";

	/**
	 * Retourne le mode d'un fichier.
	 * 
	 * @param fileName
	 *            nom du fichier (chemin relatif ou absolu)
	 * 
	 * @return mode du fichier
	 * 
	 * @throws Exception
	 *             si le fichier n'est pas accessible
	 */
	public static short getMode(String fileName) throws Exception {

		File f = new File(fileName);
		if (!f.exists())
			throw new Exception("Fichier " + fileName + " introuvable");
		Process process = Runtime.getRuntime().exec(STAT_COMMAND + fileName);
		byte[] bytes = new byte[4];
		process.getInputStream().read(bytes);
		return (short) Integer.parseInt(new String(bytes), 16);
	}
}

Et on doit s'en servir pour présenter les droits en lecture, écriture et exécution d'un fichier en java.

Donc voici mon problème : la commande "stat --format=%f " fonctionne sous linux. J'ai une machine virtuel sur laquelle tester ce code, et il fonctionne très bien. Mais pour des raisons pratique, j'aimerais obtenir le même résultat sur windows.

Le but de cette méthode est de fournir une suite de bits que l'on peut extraire via un masque.

J'ai cherché sur internet et n'ai trouvé que des commandes pour gérer les fichiers, style cacls /r toto pour donner les droits en lecture sur le fichier toto. Mais ceci est équivalent à un chmod u+r toto sous Linux. Il ne fourni donc pas les informations souhaités.

Merci d'avance pour votre aide.

P.S. : si vous vous posez la question du pourquoi ? C'est parce que même à l'université, on travail sur windows. Linux est utilisé sur machine virtuel. Donc si je veut présenter mon travail, ça sera plus sympa de le faire sans passer par la VM.

tsez93
tsez93
Niveau 10
16 novembre 2015 à 04:08:58

Salut
regarde icacls pour lire les permissions sous Windows : https://technet.microsoft.com/en-us/library/cc753525.aspx

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment