Pas de question mais félicitations à tout le monde, c'est un des Jeudis techno parmi les plus populaires !
Forum Libre
Communautés principales de l'instance
Nous rejoindre sur Zulip: https://jlailu.zulipchat.com/
Une communauté pour discuter de tout et de rien:
- Fil quotidien "comment allez-vous?"
- Contenu détendu
- Questions à la communauté
- Aujourd'hui j'ai appris
- Anecdotes personnelles
- Bonnes nouvelles
- Projets locaux / associatifs
- Inspiration
- BD / illustrations
- Etc.
Les mots d'ordre sont : respect et bienveillance.
Les discussions politiques sont déconseillées, et ont davantage leur place sur
- !france@jlai.lu
- !monde@jlai.lu
- !belgique@jlai.lu
- !luxembourg@lemmy.world
- !quebec@lemmy.ca
- !suisse@lemmy.world
Les règles de l'instance sont bien entendu d'application.
Fils hebdomadaires"
- Lundi Lecture
- Mardi Marrant
- Mercredi CinéSéries
- Jeudi Tech
- Samedi DJ/Musique
- Dimanche Jeux Videos
"Demandez-moi n'importe quoi"
- Je suis un maraicher en bio sur petite surface - DMN (AMA)
- Je serai bientôt ordonné pasteur protestant, demandez-moi ce que vous voulez !
- Je bosse au 4/5 sur les modèles de langage (LLM, parfois appelées IAs) et à 2/5 sur la robotique open hardware AMA
Communautés détendues
Communautés liées:
Loisirs:
- !cineseries@jlai.lu
- !cyclisme@sh.itjust.works
- !jeuxvideo@jlai.lu
- !jardin@lemmy.world
- !jeuxvideo@jlai.lu
- !livres@jlai.lu
- !motardie@jlai.lu
- !sport@jlai.lu
- !technologie@jlai.lu
Vie Pratique:
Communautés d'actualité
Société:
Pays:
- !monde@jlai.lu
- !belgique@jlai.lu
- !france@jlai.lu
- !luxembourg@lemmy.world
- !quebec@lemmy.ca
- !suisse@lemmy.world
Communauté de secours:
Un truc bizarre. J'utilise Owlbear Rodeo, solution web de VTT (Virtual Table Top). Sur mon PC principal, avec FF, ça lague gravement quand j'essaie de déplacer un personnage sur la carte.
Le même site avec la même carte, le même OS, le même navigateur et les mêmes plugins fonctionne nickel sur le vieux PC poussif que j'ai reconditionné en média center.
J'ai testé avec Chromium sur mon PC principal et ça marche bien. Comment se fait-ce ?
Connaissez vous des logiciels qui serait utile pour les associations, qui soit freemium, gratuite voir open-source ?
Merci
(ps comment on traduirait open-source en français français ? 😂)
En plus de l’annuaire de Framasoft on peu aussi regarder du côté de Yunohost qui est une distribution basée sur Debian qui permet de simplifier l'hébergement d'une multitude d'applications en source ouverte (ça me permet d'utiliser le terme français pour open-source :) ) Toutes les applications sont triées par catégorie et visible via le lien suivant ( et on a des liens vers les repos des sources et les documentation des application)
PS: Il y a aussi des alternatives à Yunohost, qui se base notamment sur des container pour gérer les application, mais je ne les utilise pas et me souviens jamais de leur nom.
Paheko, j'ai jamais essayé mais je m'apprête à partir là dessus pour ma nouvelle asso, en tout cas ça a l'air chouette.
Framasoft propose pas mal de choix de logiciel libre, notamment des alternatives à google docs, doodle et autres : https://framasoft.org/fr/
Sinon, tu peux aussi regarder ce qu'ils conseillent en tiers ici, en triant par l'étiquette "association" https://framalibre.org/
"Logiciel à source ouverte". Mais l'open source, C'est juste la "Liberté 0" de la GPL, te laisse pas avoir.
Possible d'avoir une explication simplifié stp, j'ai rien capté 😅
Open source != Libre
En gros c'est pas parce qu'on donne la source d'un logiciel qu'on autorise sa modification par exemple.
C'est très documenté sur internet je te laisse chercher par toi même si ça t'intéresse 🙂
Désolé, j'aurais dû être un peu plus précis. Ce que je n'ai pas compris c'est plutôt la liberté 0 du gpl
Pas de souci, je pense que j'ai aussi rien compris au message haha
La GPL vous dote de 4 libertés (de 0 à 3 (informaticiens, TMTC)) :
0/ La liberté d'exécuter le logiciel, pour n'importe quel usage ;
1/ La liberté d'étudier le fonctionnement d'un programme et de l'adapter à ses besoins, ce qui passe par l'accès aux codes sources ;
2/ La liberté de redistribuer des copies ;
3/ La liberté de faire bénéficier la communauté des versions modifiées.
Source : https://fr.wikipedia.org/wiki/Licence_publique_g%C3%A9n%C3%A9rale_GNU
Aaah d'accord j'avais oublié cette histoire de libertés de la GPL, merci !
Merci
En plus de ce qui t'a été présenté, la contre-voie a quelques services gratuits (les quatre premiers).
EDIT: problème résolu! Merci à tout le monde pour les réponses. Mon problème a été résolu avec baloosearch6 et du temps parce que j'avais un souci d'indexation. Je vais probablement aussi suivre la piste de passer mes fichiers en .odt mais ce sera pour plus tard
Est-ce qu'il y a une manière simple de faire une recherche dans les fichiers sur Linux (j'ai bazzite)? C'est vraiment un truc qui me manque. KFind n'a pas l'air de chercher les .doc, sauf un de temps en temps pour une raison que j'ignore. Mais j'ai des années de .doc.
Je teste la commande grep mais je ne comprends pas tout, il me manque des résultats donc c'est que je fais mal quelque chose. Est-ce que l'astérisque fonctionne? Genre si j'écris "patat*" il me trouve "patate", "patates", "patatras"? Et, de toute façon, il faudrait ensuite que j'aille chercher les fichiers un par un dans chaque sous-dossier, ce qui n'est pas ce que j'appelle une recherche simple quand je veux chercher un mot et ouvrir tous les fichiers qui le contiennent. Je pourrais m'en accommoder mais s'il y a autre chose je suis tout ouïe.
Je n'ai pas lu toutes les autres réponse à ton message.
Si la ligne de commande ne te dérange pas, pour trouver un fichier il y a effectivement les commandes find
et grep
.
Mais comme l'indique certains autres message, elles deux but différent.
find
permet de trouver un fichier en fonction des attribues de celui-ci, comme par exemple son nom.
grep
permet dans un sens de trouver un fichier en fonction de son contenu ... mais le but premier de la commande est plus de chercher une chaîne de caractères dans une multitude de fichier.
Concernant des exemples simple de commandes, j'invite à regarder du côté des multiples implémentation de tldr, pour "Too long; didn't read". Le but est simple, sachant que les man des commandes sont parfois long à lire pour trouver la fonctionnalité que l'on cherche; fournir des exemples claire regroupant diverse utilisation ou options d'une commande en executant tldr find
par exemple.
Le repo communautaire où sont stocker ces exemples est ici.
Personnellement j'utilise l'implémentation tealdeer qui à l'avantage selon moi de permettre de créer des fichier macommande.patch où rajouter nos propre exemples.
Je mets ci-dessous les exemples pour find
et grep
.
A noté que l'on peut utiliser la commande fd
en alternative à la commande find
et rg
à la commande grep
(leur syntaxe est un peu plus simple et leurs exécutions plus rapide).
tldr de find grep fd et rg (tout ce qui suit "tldr perso" fait parti de mes fichiers .patch)
find
> $ tldr find
Trouve récursivement des fichiers ou des dossiers dans l'arborescence spécifiée.
Plus d'informations : <https://manned.org/find>.
Trouve des fichiers par extension :
find racine -name '*.ext'
Trouve des fichiers correspondant à plusieurs chemins ou motifs :
find racine -path '**/chemin/**/*.ext' -or -name '*motif*'
Trouve des dossiers correspondant à un nom donné sans vérifier la casse :
find racine -type d -iname '*lib*'
Trouve des fichiers correspondant à un motif donné en excluant certains chemins de la recherche :
find racine -name '*.py' -not -path '*/site-packages/*'
Trouve des fichiers dans une fourchette de tailles et limite la profondeur récursive à "1" :
find racine -maxdepth 1 -size +500k -size -10M
Exécute une commande pour chaque fichier (utiliser `{}` dans la commande pour utiliser le nom des fichiers) :
find racine -name '*.ext' -exec wc -l {} \;
Trouve les fichiers modifiés dans les 7 derniers jours :
find racine -daystart -mtime -7
Trouve les fichiers vides (de taille nulle) et les supprimer :
find racine -type f -empty -delete
tldr perso
négation
find /tmp \! -type d
find /tmp -not -type d
ALIAS :
find from name in current directory
function ff() { find . -type f -iname '*'$*'*' -ls ; }
function ff() { find . -type f -iname '*'$*'*' -exec exa -l {} \; }
grep
> $ tldr grep
Recherche des motifs dans un texte.
Supporte des motifs simples et des expressions régulières.
Plus d'informations : <https://www.gnu.org/software/grep/manual/grep.html>.
Recherche une chaîne de caractères précise :
grep "chaîne_recherchée" chemin/vers/fichier
Recherche en ignorant la casse :
grep [-F|--fixed-strings] "chaîne_recherchée" chemin/vers/fichier
Recherche récursivement (en ignorant les fichiers non-texte) dans le dossier courant une chaîne de caractères précise :
grep [-r|--recursive] [-n|--line-number] "chaîne_recherchée" .
Utilise des expressions régulières étendues (supporte `?`, `+`, `{}`, `()` et `|`) :
grep [-Ei|--extended-regexp --ignore-case] expression_régulière chemin/vers/fichier
Affiche 3 lignes de [C]ontexte, avant ([B]efore), ou [A]près chaque concordance :
grep --context|--before-context|--after-context 3 "chaîne_recherchée" chemin/vers/fichier
Affiche le nom du fichier avec la ligne correspondante pour chaque concordance :
grep [-Hn|--with-filename --line-number] --color=always "chaîne_recherchée" chemin/vers/fichier
Utilise l'entrée standard au lieu d'un fichier :
cat chemin/vers/fichier | grep "chaîne_recherchée"
fd
> $ tldr fd
An alternative to `find`.
Aims to be faster and easier to use than `find`.
More information: <https://github.com/sharkdp/fd#how-to-use>.
Recursively find files matching a specific pattern in the current directory:
fd "string|regex"
Find files that begin with a specific string:
fd "^string"
Find files with a specific extension:
fd [-e|--extension] txt
Find files in a specific directory:
fd "string|regex" path/to/directory
Include ignored and hidden files in the search:
fd [-H|--hidden] [-I|--no-ignore] "string|regex"
Execute a command on each search result returned:
fd "string|regex" [-x|--exec] command
rg
> $ tldr rg
Ripgrep, a recursive line-oriented search tool.
Aims to be a faster alternative to `grep`.
More information: <https://github.com/BurntSushi/ripgrep/blob/master/GUIDE.md>.
Recursively search current directory for a pattern (regular expression):
rg pattern
Recursively search for a pattern in a file or directory:
rg pattern path/to/file_or_directory
Include hidden files and entries listed in `.gitignore`:
rg [-.|--hidden] --no-ignore pattern
Only search the files whose names match the glob pattern(s) (e.g. `README.*`):
rg pattern [-g|--glob] filename_glob_pattern
Recursively list filenames in the current directory that match a pattern:
rg --files | rg pattern
Only list matched files (useful when piping to other commands):
rg [-l|--files-with-matches] pattern
Show lines that do not match the pattern:
rg [-v|--invert-match] pattern
Search for a literal string pattern:
rg [-F|--fixed-strings] -- string
Merci beaucoup! pour l'instant j'ai pas le courage d'essayer tout ça, mais je le mets de côté parce que c'est presque tout compréhensible :)
Puisque tu parles de KFind, j'en déduis que tu dois être sous KDE Plasma comme environnement de bureau? Tu peux vérifier si tu as l'indexation d'activée (dans "Recherche" dans le panneau de configuration), et vérifier si tu as "Nom et contenu de fichiers" sélectionné, plutôt que juste "Uniquement les noms de fichiers". Vérifie aussi, si tu as une arborescence un peu bizarre (par exemple un disque dur de données à part) que tous les dossiers que tu veux sont bien indexés (par défaut, seulement le home et tous les dossiers dans le home le sont).
Ensuite, tu devrais pouvoir rechercher le contenu de tes fichiers rapidement (quand l'indexation est finie) avec n'importe quel outil de recherche de Plasma (Ctrl+F dans Dolphin, Krunner, etc.). Si tu veux l'utiliser en ligne de commande, tu peux utiliser la commande baloosearch
dans le terminal pour faire ta recherche aussi. Perso, ça m'arrive que Ctrl+F fasse de la merde, mais que baloosearch
fasse correctement la recherche... ¯\_(ツ)_/¯
EDIT : Ça devrait marcher avec les docx
Oui j'ai KDE. L'indexation est activée, mais j'avais deux home/ordi, dont un pas indexé, que j'ai indexé. La recherche ne rendait rien du tout ensuite, j'y ai été de nouveau, et j'avais trois home/ordi dont un pas indexé... Y avait bien nom et contenus, et je cherche bien dans les contenus mais je ne trouve plus rien du tout.
Apparemment il faut que j'installe un truc pour baloosearch? mais je trouve pas comment. Déso je comprends que dalle dès que je suis dans le terminal, c'est pour ça que je veux pas trop l'utiliser d'ailleurs.
Alors je pense qu'il faut surtout régler ton problème avec l'indexation avant de partir sur des trucs compliqués en ligne de commande. Normalement, ça devrait marcher, c'est fait pour répondre à ton besoin, sans passer par la ligne de commande.
Est-ce que tu peux me renvoyer le résultat de la commande suivante (désolé, on va essayer d'utiliser le terminal le moins possible, mais c'est plus pratique que décrire du clique-bouton en ligne) : balooctl status
(s'il te dit que la commande n'existe pas, essaie balooctl6 status
).
Ca me dit ça:
L'indexation de fichiers Baloo est active État de l'indexation : Inactif Nombre total de fichiers indexés : 7 719 Fichiers en attente d'indexation du contenu : 0 Fichiers impossibles à indexer : 0 La taille actuelle de l'indice est de « 40,08 Mio »
(Et maintenant j'ai 4 home/ordi dans le truc de recherche mdr, je vais arrêter d'indexer celui qui apparaît à chaque fois)
grep
c'est plutôt pour chercher dans des fichiers de textes simples, notamment pour les fichiers sources, c'est pas approprié pour faire une recherche dans des documents qui sont encodés.
Pour ouvrir tous les fichiers avec un certain nom ou une phrase tu 'pipe' la commande find
ou grep
avec xdg-open
example: grep -rl test | xargs -n 1 xdg-open
ou quelque chose comme ça.
J'ai pas testé mais en cherchant vite fait je trouve ça :
https://github.com/phiresky/ripgrep-all
Pour le contexte ripgrep c'est un outil comme grep mais plus récent, plus performant et plus ergonomique.
J'ai perdu quelques fichiers récemment, j'ai fait des recherches et suis tombé sur un post (stackoverflow ?) ou quelqu'un postait un programme pour chercher dans des ODT. Le veux-tu ?
Chercher dans les odt, c'est bon, KFind le fait, bien semblerait-il, et c'était installé de base. Mon problème c'est les doc/docx, et j'en ai des centaines. Mais merci de la proposition :)
Au pire, tu convertis tes doc en odt (je fais ça en ligne de commande les rares fois ou je télécharge du .doc).
Je peux faire ça si ça se fait pas un par un oui. Ca va sans doute niquer la mise en page mais je garderai les doc à côté.
Testé chez moi. Fonctionnel.
Pour du docx :
for doc in *.docx;do libreoffice --headless --convert-to odt "${doc}";done
Merci! Comment est-ce que j'indique de ne convertir que les documents d'un dossier donné? Je pense que je vais tenter ça, mais ce week-end parce que la flemme de faire toutes les sauvegardes etc. avant.
J'avais oublié le script :/
#!/bin/bash
# Source : https://askubuntu.com/questions/938834/grep-for-text-in-odt-or-doc-files
find . -type f -name "*.od*" | while read i ; do
[ "$1" ] || { echo "You forgot search string!" ; exit 1 ; }
unzip -ca "$i" 2>/dev/null | grep -iq "$*"
if [ $? -eq 0 ] ; then
echo "string found in $i" | nl
fi
done
J'anticipe l'édit, mais idem qu'au-dessus, il s'agit de double quotes.
Tu lances le programme avec ton motif en argument. Il va chercher dans le dossier courant et ses sous-dossiers.
Je ne comprends pas "ton motif en argument" ni où est spécifié le dossier courant, ni exécuter le programme dans le dossier courant (c'est la partie "dans le dossier courant" que je sais pas comment on fait), mais j'ai sauvegardé le lien et un autre et je pencherai dessus. Bref, je suis un peu stupide en informatique (je le vis bien mais de temps en temps Linux c'est rude pour les gens comme moi).
# Pour rendre ton fichier executable
chmod +x fichier
# Pour l'executer
./fichier
# Pour lancer avec un argument / motif
./fichier argument
Dossier courant : dossier ou tu te trouves actuellement (dans ton navigateur de fichiers ou ton shell / terminal)
Tel qu'il est écrit, il s'occupe que du dossier courant.
Je pense qu'un find pourrait gérer plus.
Exemple (pas testé) :
find . -type f -name "*.docx" -exec libreoffice --headless --convert-to odt '{}' \;
A exécuter dans le dossier courant pour les fichiers du dossier courant et ses sous-dossiers.
Il y a conversion, mais il s'agit de simples et doubles quotes.