Outils pour utilisateurs

Outils du site


bloc_note

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
bloc_note [2024/12/17 10:12] adminbloc_note [2025/03/24 15:27] (Version actuelle) admin
Ligne 2: Ligne 2:
  
 <code> <code>
- +        <g id="SANDOUVILLE" transform="matrix(2.91786,0,0,2.64787,-910.867,-504.816)"
-#include <stdio.h> + <ellipse cx="475.825" cy="305.328" rx="0.902" ry="0.994" style="fill:rgb(216,29,29);"/> 
-#include <stdlib.h> + <g transform="matrix(0.0639002,0,0,0.0708526,474.795,304.48)"> 
-#include <string.h> + <g> 
-#include <unistd.h+ <path id="Rectangle-24serif:id="Rectangle-2" d="M24,11L26,11L26,13.686L13.686,26L2,13.686L13.686,2L26,2L26,8L24,8L23,5L14.929,5L6.188,13.741L13.742,21.701L23,12.444L24,11Zstyle="fill:rgb(26,26,26);"/> 
-#include <sys/types.h> + <path id="D4serif:id="Dd="M13.342,17.085C12.996,17.085 12.623,17.074 12.225,17.052C11.827,17.031 11.461,17 11.128,16.96L11.128,9.795C11.504,9.708 11.925,9.64 12.39,9.59C12.855,9.54 13.307,9.515 13.748,9.515C15.191,9.515 16.272,9.823 16.993,10.44C17.713,11.057 18.073,12.01 18.073,13.3C18.073,14.187 17.9,14.908 17.555,15.465C17.21,16.022 16.691,16.431 15.998,16.693C15.304,16.954 14.419,17.085 13.342,17.085ZM13.938,15.34C14.378,15.34 14.737,15.273 15.015,15.14C15.293,15.007 15.502,14.791 15.64,14.493C15.778,14.194 15.848,13.793 15.848,13.29C15.848,12.793 15.775,12.396 15.63,12.098C15.485,11.799 15.272,11.583 14.99,11.45C14.708,11.317 14.353,11.25 13.923,11.25C13.832,11.25 13.728,11.256 13.608,11.268C13.487,11.279 13.386,11.293 13.303,11.31L13.303,15.325C13.456,15.335 13.667,15.34 13.938,15.34Zstyle="fill:rgb(50,50,50);"/> 
- + </g> 
-void check_if_launched_by_script() { + </g> 
-    pid_t ppid getppid(); // Obtenir le Parent Process ID + </g>
-    char path[256]; +
-    char cmdline[1024] {0}; +
-    FILE *file; +
- +
-    // Construire le chemin vers /proc/[PPID]/cmdline +
-    snprintf(pathsizeof(path), "/proc/%d/cmdline"ppid); +
-     +
-    // Ouvrir le fichier cmdline pour lire la commande du parent +
-    file fopen(path"r"); +
-    if (!file) { +
-        perror("ErrorUnable to open parent process info."); +
-        exit(1); +
-    } +
- +
-    // Lire le contenu de cmdline +
-    if (fgets(cmdline, sizeof(cmdline), file) !NULL) { +
-        // Vérifier si cmdline contient uniquement "bashou "sh(shell interactif) +
-        if (strstr(cmdline, "bash") && !strchr(cmdline'/')) { +
-            fprintf(stderr"Error: This program cannot be run directly from an interactive shell.\n"); +
-            fclose(file); +
-            exit(1); +
-        } +
-    } +
-    fclose(file); +
-+
- +
-int main(int argcchar *argv[]) { +
-    // Vérifier si le programme a été lancé via un script +
-    check_if_launched_by_script(); +
- +
-    printf("Program successfully launched by a shell script.\n"); +
- +
-    // Logique principale du programme ici +
-    return 0; +
-+
- +
  
 </code> </code>
bloc_note.1734426723.txt.gz · Dernière modification : 2024/12/17 10:12 de admin