This is an old revision of the document!
Table of Contents
Usual Commands
Links
User management :
[FR] http://www.labo-linux.org/cours/module-1/chapitre-05-gestion-des-utilisateurs/
List
| Command | Description | 
|---|---|
| General | |
| pwd | print the current path | 
| which <program> | print the path of the <program> | 
| write <user> | write messages with a user connected on the same machine | 
| Kernel modules | |
| lsmod | list modules | 
| insmod nvidia / modprobe nvidia | insert the module (modprobe higher level) | 
| rmmod nvidia / modprobe -r nvidia | remove the module (modprobe higher level) | 
| Boot scripts (Gentoo) | |
| rc-update show | list boot scripts | 
| rc-update add script.sh boot | add the script to the boot level | 
| Manage users | |
| adduser -m -s /bin/zsh -g <primary-group> <user> | add user, ask creation of his home folder (-m), shell (-s), primary group (-g) | 
| passwd cyril | change the password of user cyril (or yours if no user specified) | 
| groupadd <group> | add a group to the system | 
| /etc/passwd | contains UID of users, home directory and shell used | 
| /etc/shadow | contains crypted passwords of users | 
| /etc/group | contains groups GIDs and list of users in | 
| usermod -a -G <group> <user> | add an exisiting user to an existing group | 
| chsh -s /bin/zsh | change default shell of user | 
| userdel | delete user | 
| groupdel | delete group | 
| Manage permissions | |
| chmod -R [u/g/o/a][+/-/=][r/w/x/X][,…] <file(s)/folder(s)> | change permissions (user,group,other,all ; read,write,execute,execute clone) | 
| chmod -R 0222 | change permissions (octal : rwx=1+2+4 / ugo) | 
| chown -R <owner>:<group> <file(s)/folder(s)> | change owner and group | 
| chgrp -R <group> <file(s)/folder(s)> | only change group | 
| Monitoring | |
| top / htop / ps / free | processes (cpu, mem) | 
| nettop / jnettop | network | 
| lsof | opened files | 
| w | connected users | 
| pidstat | |
| atop | |
| System | |
| lspci | |
| lsusb | |
| lshw | |
| File content manipulation | |
| cat file | head -n 2,cat file | tail -n 2 | |
| cat file | grep <string> | only print lines containing string (-e for regexp) | 
| grep -r <string> * | search recursively the string in all files | 
| cat <file> | cut -d “ ” -f 1,2,4-10 | only prints the given fields (-f), obtained with the given delimiter (-d), or the complement (–complement) | 
| cat <file> | sed 's/string1/string2/g | replace string1 by string2 (and a lot more with sed) | 
| sed -i 's/string1/string2/g <files> | replace string1 by string2 in all files | 
| echo “Image 10:55.jpg” | sed 's/([0-9]{2}).jpg/\1 #1.jpg/'  | example with more complex regex | 
| perl -pi -e “s/string1/string2/g” <files> | replace string1 by string2 in all files (and a lot more with perl) | 
| awk 'NR>10 && NR<1000 {print $#}' <file-in> | extract lines 10 to 1000 from file-in to file-out | 
| awk '{ print “[10](“$1”,”$4“,”$5“,”$6“)” }' <file-in> | reorganize and reformat columns of a file | 
| awk 'NR==1 { t=$1 } NR>1 { dt=t-$1; t=$1; print dt; }' <file-in> | output the difference between two consecutive lines | 
| cat <file> | tr '[:lower:]' '[:upper:]'  | convert lowercase to uppercase (and a lot more with tr) | 
| date +“%Y/%m/%d %H:%M:%S” | tr '\012' ' ' » log.log | write date in a file without the last line return | 
| cat <file> | wc -l | count number of lines (and a lot more with wc) | 
| iconv -f iso-8859-15 -t utf8 <file> | convert file content from encoding latin9 to utf8 (see also recode) | 
| convmv -f iso-8859-15 -t utf8 -r <folder> | convert file names of files in folder from encoding latin9 to utf8 | 
| paste | merge files by concatenating columns | 
| Programming | |
| nm [-D] / objdump / ldd / readelf [-s] | check infos about link and symbols in exe and libs | 
| strace | list system calls a program issues | 
tr '\012' ' '




