Accueil > Linux > Lignes de commandes > bash - shell - un certain nombre de programmes
bash - shell - un certain nombre de programmes
Publié le 19 mars 2017, dernière mise-à-jour le 4 juin 2024, 31 visites, visites totales.
trouver un fichier dans un paquet
grep foo2hbpl2 /var/lib/dpkg/info/*.list
dpks -S foo2hbpl2
décimal <-> hexadécimal
- décimal -> hexadécimal
echo "257"|dc -e '10i16o?p' 101
- hexadécimal -> décimal
echo "101"|dc -e '10o16i?p' 257
- (2+1)*F -> decimal
echo "F 1 2"|dc -e '10o16i?+*p' 45
apt apt-get
apt list mariadb-client mariadb-server
En train de lister... Fait
mariadb-client/stable,now 1:10.11.3-1 amd64 [installé, automatique]
mariadb-client/stable 1:10.11.3-1 i386
mariadb-server/stable,now 1:10.11.3-1 amd64 [installé]
mariadb-server/stable 1:10.11.3-1 i386
touch
changer la date du fichier
touch -t "AAAAMMJJMMSS" fichier
touch -t "202310051200" fichier
built-in commands
compgen -b
readlink
$ readlink sh
bash
pid d’une fenêtre
lancer
xprop |igrep pid|sed "s#[^0-9]##g"
choisir une fenêtre
pid des processus
echo $BASHPID
5770
gedit &
[1] 6087
pstree -p | grep -C 2 6087
| |-dconf-service(1617)-+-{dconf-service}(1622)
| | -{dconf-service}(1623)
| |-gnome-terminal-(5760)-+-bash(5770)-+-gedit(6087)-+-bash(6095)
| | | | |-{gedit}(6088)
| | | | |-{gedit}(6089)
formater des lignes
afficher sur 6 colonnes : ls |pr -6t
afficher les codes hexadécimaux dans un texte
echo "la ligne de commande" | hd
echo "a^Va" |hd
00000000 61 16 61 0a |a.a.|
00000004
echo "a^Va" |hd |cut -d "|" -f2
a.a.
00000004
CESU
A partir des fichiers de salaires donnés par le cesu, Bulletin salaire_MACHIN_11_2019.pdf, on obtient
Id | Date | Net | NetImposable | Heures | SalaireHoraireNet | SalaireBrut | Patron | Fichier |
2015/05 | 180 | 186,71 | 6 | 30 | 235,39 | MACHIN | ./MACHIN/Bulletin salaire_MACHIN_05_2015.pdf |
find . -name "*pdf" -print |while read i ; do echo "$i";nom=$(echo "$i" |sed 's#.*Bulletin salaire_\(.*\)_\([0-9][0-9]\)_\(20[0-9][0-9]\).pdf#\1#'); pdf2htmlEX "$i" a.html ; tmp=$(cat a.html |sed 's/<[^<>]*>//g' |tr "\n" " " |sed "s#.*Paie du [0-9][0-9]/\([0-9][0-9]\)/\(20[0-9][0-9]\).*Salaire net imposable (CSG/CRDS inclus) : \([0-9,]*\) €.*Net à payer avant impôt sur le revenu:\([0-9,]*\) €.*Nombre d'heures travaillées:\([0-9]*\).*Salaire horaire net (heures normales):\([0-9,]*\) €.*Salaire brut : \([0-9,]*\) €.*#\2/\1\t\4\t\3\t\5\t\6\t\7\n#"); echo -e "\t""$tmp""\t""$nom""\t""$i" >>tmp.csv ;done ; echo -e "Id\tDate\tNet\tNetImposable\tHeures\tSalaireHoraireNet\tSalaireBrut\tPatron\tFichier">salaires.csv ; cat tmp.csv |sort -u >> salaires.csv ;rm tmp.csv a.html
xclip
xclip -o
: donne le texte copier ( copier/coller )
export
export
donne les valeurs des variables
exemple :
export |grep SHELL
declare -x SHELL="/bin/bash"
echo $SHELL
/bin/bash
id
utilisateur normal : id
uid=1000(moi) gid=1000(moi) groupes=1000(moi),....
root : id
uid=0(root) gid=0(root) groupes=0(root)
loginctl
loginctl session-status
Failed to query ControlGroup: No such property 'ControlGroup'
1 - moi (1000)
Since: Wed 2017-08-02 14:43:37 CEST; 2h 3min ago
Leader: 4152 (lightdm)
Seat: seat0; vc7
Display: :0
Service: lightdm; type x11; class user
Desktop: mate
State: active
Unit: session-1.scope
ps
ps aux |grep lightdm
root 2287 0.0 0.0 289964 6528 ? SLl 14:42 0:00 /usr/sbin/lightdm
root 2770 2.0 0.8 427468 72676 tty7 Ssl+ 14:42 2:34 /usr/lib/xorg/Xorg :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
lightdm 3658 0.0 0.0 48136 2428 ? S 14:43 0:00 dbus-launch --autolaunch=951a1a1adc434650a61cdb4b557a485b --binary-syntax --close-stderr
lightdm 3773 0.0 0.0 45120 2584 ? Ss 14:43 0:00 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
lightdm 4014 0.0 0.0 220224 6244 ? Sl 14:43 0:01 /usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session
root 4152 0.0 0.0 250708 6840 ? Sl 14:43 0:00 lightdm --session-child 12 21
cd
ouvrir un terminal menu applications/accessoires/terminal :
apparaît nom@ordi : $ qui sera utilisé dans la suite
cd nom_du_repertoire
: va dans le répertoire
exemple : cd /usr/bin
cd .. on remonte d’un répertoire
cd : on va dans le répertoire personnel ( équivalent à cd /home/nom )
ls
ls : liste les fichiers et répertoires
ls -al
liste les fichiers et répertoires y compris cachés et les permissions
permissions : voir chmod xyz fichier
r = read ( lecture autorisée ) :vaut 4 ou 0
w = write ( écriture autorisée) : vaut 2 ou 0
x : exécution autorisée : vaut 1 ou 0
rx = 4 + 1 = 5
rwx = 4 + 2 + 1 = 7
sudo -s
sudo -s
: apparaît root@ordi : $ : vous devenez root, donc vous pouvez tout faire sur cet ordi, y compris tout effacer.
chown et chmod
chown nom :nom fichier
: le fichier devient le fichier de nom dans le groupe nom ; le fichier doit déjà vous appartenir sinon passez en root
chown -R nom :nom repertoire
: le répertoire et tout ce qu’il contient devient le fichier de nom dans le groupe nom
chmod xyz fichier
: le fichier prend les permissions xyz : très utile si vous ne pouvez pas copier dans un répertoire, ou lire un fichier. ( voir ls -al )
x : permissions du propriétaire
y : permissions du groupe
z : permissions de tout le monde
x, y et z sont des nombres de 0 à 7 tels que :
0 2 4 6 : fichier non exécutable ( ou répertoire non ouvrable )
1 3 5 7 : fichier exécutable ( ou répertoire ouvrable )
0 1 4 5 : fichier non réinscriptible
2 3 6 7 : fichier réinscriptible
0 1 2 3 : fichier non lisible
4 5 6 7 : fichier lisible
exemple : 5 : fichier exécutable ( ou répertoire ouvrable ) et fichier non réinscriptible et fichier lisible
exemple chmod 754 fichier :
7 : fichier exécutable ( ou répertoire ouvrable ) et fichier réinscriptible et fichier lisible pour le propriétaire du fichier
5 : fichier exécutable ( ou répertoire ouvrable ) et fichier non réinscriptible et fichier lisible pour tous les utilisateurs appartenant au groupe du fichier
4 : fichier non exécutable ( ou répertoire non ouvrable ) et fichier non réinscriptible et fichier lisible pour tous les utilisateurs
chmod -R xyz repertoire
: le répertoire et tout ce qu’il contient prend les permissions xyz
ifconfig ( obsolète )
ifconfig
: donne les caractéristiques de votre réseau et/ou internet
utiliser plutot ip a commandes réseaux en vrac
mount et umount
mount -a
: monte tout ce qui est déclaré dans /etc/fstab, par exmple, permet d’accéder à une partition nouvellement créée
umount /media/hda1
: démonte /media/hda1
ps
ps aux
: montre les programmes en cours d’exécution ; permet en particulier de les arrêter en notant le premier nombre ( PID )
kill et killall
killall firefox-bin
: arrête tous les programmes firefox-bin
kill -9 PID
, tue le programme PID
on peut aussi utiliser top :
top puis CTRL C pour arreter : montre l’utilisation du CPU
free
: montre l’utilisation des mémoires
ou htop
top et htop
top - 00:37:05 up 1:44, 2 users, load average: 4,74, 3,54, 2,77
Tasks: 168 total, 1 running, 167 sleeping, 0 stopped, 0 zombie
%Cpu(s): 95,0 us, 5,0 sy, 0,0 ni, 0,0 id, 0,0 wa, 0,0 hi, 0,0 si, 0,0 st
MiB Mem : 2874,5 total, 117,2 free, 821,0 used, 1936,4 buff/cache
MiB Swap: 7000,2 total, 6987,7 free, 12,6 used. 1810,6 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2211 poum 20 0 1115808 212328 67788 S 77,8 7,2 5:57.61 ghb
511 root 20 0 369520 61344 43420 S 11,1 2,1 3:08.68 Xorg
apt
-
apt-get install programme
: télécharge sur internet ou un cd ( déclaré dans /etc/apt/sources.list ) et installe le programme
-
apt-cache show vlc-plugin-jack
Affiche les informations associée au paquet vlc-plugin-jack.
Package: vlc-plugin-jack
Source: vlc
Version: 3.0.10-0+deb9u1
Installed-Size: 216
Maintainer: Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
Architecture: amd64
Depends: libc6 (>= 2.8), libjack-jackd2-0 (>= 1.9.10+20150825) | libjack-0.125, libvlccore9 (>= 3.0.10), vlc-plugin-abi-3-0-0f
Description-fr: greffons audio Jack pour VLC
VLC est le lecteur multimédia du projet VideoLAN. Il peut lire les
fichiers MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3,
Ogg/Vorbis, les DVD, VCD, la baladodiffusion et les flux multimédia de diverses
sources réseau.
.
Ces greffons permettent au lecteur multimédia VLC d'utiliser JACK. Pour
activer le module de sortie audio, utilisez l'option « --aout jack » ou
sélectionnez le greffon de sortie audio « jack » dans le menu des
préférences. Pour une entrée jack, utilisez
« vlc jack://channels=…:ports=… »
Description-md5: 48cfa579f6997ac3ff068125f952b74b
Homepage: http://www.videolan.org/vlc/
Enhances: vlc
Multi-Arch: same
Pre-Depends: dpkg (>= 1.17.14)
Section: video
Priority: optional
Filename: pool/updates/main/v/vlc/vlc-plugin-jack_3.0.10-0+deb9u1_amd64.deb
Size: 132398
MD5sum: fe8dd1d6c9ddacf6889ed48a0924bac2
SHA1: ef6bfbff50a17f95b5916e73bb143fcdca531bf4
SHA256: a3aa78a79588c66d5396965aef622d738c9549ace592b274d131c9f76123a236
Package: vlc-plugin-jack
Source: vlc
Version: 3.0.8-0+deb9u1
Installed-Size: 214
Maintainer: Debian Multimedia Maintainers <pkg-multimedia-maintainers@lists.alioth.debian.org>
Architecture: amd64
Depends: libc6 (>= 2.8), libjack-jackd2-0 (>= 1.9.10+20150825) | libjack-0.125, libvlccore9 (>= 3.0.8), vlc-plugin-abi-3-0-0f
Pre-Depends: dpkg (>= 1.17.14)
Enhances: vlc
Description-fr: greffons audio Jack pour VLC
VLC est le lecteur multimédia du projet VideoLAN. Il peut lire les
fichiers MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3,
Ogg/Vorbis, les DVD, VCD, la baladodiffusion et les flux multimédia de diverses
sources réseau.
.
Ces greffons permettent au lecteur multimédia VLC d'utiliser JACK. Pour
activer le module de sortie audio, utilisez l'option « --aout jack » ou
sélectionnez le greffon de sortie audio « jack » dans le menu des
préférences. Pour une entrée jack, utilisez
« vlc jack://channels=…:ports=… »
Description-md5: 48cfa579f6997ac3ff068125f952b74b
Multi-Arch: same
Homepage: http://www.videolan.org/vlc/
Tag: role::plugin
Section: video
Priority: optional
Filename: pool/main/v/vlc/vlc-plugin-jack_3.0.8-0+deb9u1_amd64.deb
Size: 130968
MD5sum: a02911e1527ce2e37f0cb54140b438cc
SHA256: 54246babb43585a6353dd2e5d09460be5f12792088d9d8dcf7129e810c2482d7
paquets : dépendances
apt-cache depends vlc-plugin-jack
Affiche toutes les dépendances du paquet vlc-plugin-jack.
Pré-Dépend: dpkg
dpkg:i386
Dépend: libc6
|Dépend: libjack-jackd2-0
Dépend: <libjack-0.125>
libjack-jackd2-0
libjack0
Dépend: libvlccore9
Dépend: <vlc-plugin-abi-3-0-0f>
libvlccore9
Améliore: vlc
-
apt-cache rdepends vlc-plugin-jack
Affiche tous les paquets dont dépend le paquet vlc-plugin-jackvlc-plugin-jack Reverse Depends: multimedia-players
Visualiser les dépendances d’un paquet .deb de manière graphique
sudo apt-get install apt-rdepends graphviz
apt-rdepends -d xz-utils | dot > /tmp/apt.dot ; dotty /tmp/apt.dot
-
apt-cache search -n vlc-plugin-jack
Recherche et affiche tous les paquets ayant dans leur nom vlc-plugin-jackvlc-plugin-jack - greffons audio Jack pour VLC
-
apt-cache madison vlc-plugin-jack
Indique le dépôts fournissant le paquet vlc-plugin-jackvlc-plugin-jack | 3.0.10-0+deb9u1 | http://deb.debian.org/debian-security stretch/updates/main amd64 Packages vlc-plugin-jack | 3.0.10-0+deb9u1 | http://security.debian.org stretch/updates/main amd64 Packages vlc-plugin-jack | 3.0.8-0+deb9u1 | http://deb.debian.org/debian stretch/main amd64 Packages vlc-plugin-jack | 3.0.8-0+deb9u1 | http://ftp.crihan.fr/debian stretch/main amd64 Packages vlc | 3.0.8-0+deb9u1 | http://deb.debian.org/debian stretch/main Sources vlc | 2.2.7-1~deb9u1 | http://deb.debian.org/debian-security stretch/updates/main Sources vlc | 3.0.10-0+deb9u1 | http://deb.debian.org/debian-security stretch/updates/main Sources vlc | 3.0.8-0+deb9u1 | http://ftp.crihan.fr/debian stretch/main Sources vlc | 2.2.7-1~deb9u1 | http://security.debian.org stretch/updates/main Sources vlc | 3.0.10-0+deb9u1 | http://security.debian.org stretch/updates/main Sources
df
df
: octets sur chaque point de montage
ex df /dev/hdb1
Sys. de fich. 1K-blocs Occupé Disponible Capacité Monté sur
/dev/hdb1 19607924 17211740 1400156 93% /media/hdb1