J'ai besoin d'intimité. Non pas parce que mes actions sont douteuses, mais parce que votre jugement et vos intentions le sont.
5138 links
Ouvrir votre fichier .bashrc
situé dans votre dossier personnel (/home/votreprofil) avec votre éditeur préféré et ajoutez le code suivant :
(Mon éditeur Markdown ne fonctionnant pas bien, supprimez l'espace entre le https
et le :
du reste de l'adresse youtube)
ydlmp3() {
origin=$(pwd)
cd ~/Musique/
if [ ! -z "$2" ]
then
if [ ! -d "$2" ]
then mkdir "$2/"
fi
cd "$2/"
fi
echo "File will be recorded in \"$(pwd)\" folder"
youtube-dl --extract-audio --audio-format mp3 https ://www.youtube.com/watch?v="$1"
cd "$origin"
}
Exemples d'utilisation :
Pour créer le dossier ~/Musique/Snarky Puppy et télécharger le morceau situé à l'adresse https://www.youtube.com/watch?v=NJvekPJ9rCI
ydlmp3 NJvekPJ9rCI "Snarky Puppy"
La même chose mais pour le télécharger dans le dossier ~/Musique sans créer de sous-dossier :
ydlmp3 NJvekPJ9rCI
Les alias de Bash n'acceptant pas de paramètres, il faut plutôt créer une fonction qui pourra être appelée comme un alias.
Parfois, il ne faut pas aller chercher très loin. Keep it simple, keep it simple...
J'ai essayé mais le fait de changer de bureau doit modifier le fait que le processus firefox n'est plus enfant du processus terminal et se ferme en même temps que celui-ci.
$ (gui_app &> /dev/null &)
Ne fonctionne pas. L'application (Firefox en l'occurence) se ferme après que le terminal se soit fermé.
Vous auriez une idée de comment faire ?
Edit : je viens de finir par trouver après y avoir passé la soirée !!!
Le but était de lancer apache et mysql, puis sublime dans le bureau 1, firefox dans le bureau 2 et de fermer le terminal me demandant mon mot de passe administrateur.
Le problème était que si je fermais le terminal manuellement, firefox se fermait également (et pas sublime).
J'ai donc écris le script suivant :
#!/bin/bash
sudo service apache2 start
sudo service mysql start
sudo service apparmor reload
sleep 1
/opt/sublime_text/sublime_text
sleep 1
setsid firefox &
wmctrl -s 1
Pour plus d'infos sur setsid
, je vous renvoie à la page de manuel en [anglais](https://linux.die.net/man/2/setsid) ou en [français](http://manpagesfr.free.fr/man/man2/setsid.2.html).
wmctrl
permet de contrôler les bureaux virtuels. L'option -s
permet de glisser vers le bureau dont on aura précisé l'index (le premier a l'index 0).
On peut trouver les index des bureaux au préalable en lançant wmctrl -d
find
, locate
, which
)Exemple simple: comment trouver un fichier portant un nom donné ? find /home -name linux-test2
"/home"
indique que nous voulons chercher à partir du répertoire « /home »
"-name"
indique que nous voulons trouver un fichier portant un nom donné.
Pour chercher tous les fichiers commençant par "linux-tes" et définir à partir de quel répertoire on souhaite effectuer la recherche, on utilise cette syntaxe: find /home/delcros -name 'linux-tes*'
Le nombre d'options de find est impressionnant. En voici quelques-unes:
-type
Indique le type de fichier que l'on recherche. Si vous cherchez seulement un répertoire vous pourrez utilisez cette option ainsi: find /usr -type d
.... Ici, on demande à find
de trouver des répertoires, et non des fichiers, grâce à l'option -type d
(penser à directory, qui signifie répertoire)
-exec
Exécute une commande sur les fichiers trouvés.
La différence entre -exec
et -ok
est que la deuxième vous demandera pour chaque fichier trouvé si vous souhaitez réellement réaliser l'opération:
find -name 'linux-tes*' -print -ok rm {} \;
./linux-test
rm ... ./linux-test ? y
Avec l'option -exec
la paire d'accolades indique l'endroit où se trouvera, lors de l'invocation de la commande, le nom du fichier trouvé. L'anti-slash lié au point virgule forme une séquence d'échappemment.
La commande locate
a la même mission que find
mais explore une base de données qui contient la liste des fichiers et répertoires. Cette base de données est en général automatiquement mise à jour quotidiennement par le système.
La syntaxe est: locate nom_du_fichier
.
Bien que la commande locate
soit très intéressante, elle ne possède pas la puissance des options de find
. De plus, si vous créez des fichiers pendant la journée elle ne les trouvera pas avant mise à jour de sa base de données (le lendemain).
La commande grep
est un pivot des commandes UNIX. Elle cherche une expression régulière dans un ou plusieurs fichiers. Exemple: grep fouille linux-commande.html
cherche les lignes contenant le mot "fouille" dans le fichier nommé « linux-commande.html ».
L'option -n
produira le numéro de chaque ligne contenant un résultat. Une autre option très utile est -l
qui permet de n'afficher que les noms des fichiers contenant ce que l'on cherche.
Un script de backup par Nono (via sebw.info).
Le script à jour sur github : https://github.com/Nono-m0le/Nono-s-Backup/
Ça peut toujours servir.