Résumé Linux

commander

; $pwd;ls Exécutez la commande droite indépendamment du fait que la commande gauche provoque une erreur ou réussit.

&&  $ls prog/ruby && pwd Exécuter la deuxième commande uniquement lorsque la première commande se termine avec succès

|| $cat temp||echo "file not found"

La deuxième commande est exécutée uniquement lorsque la première commande ne se termine pas correctement.

() $(date;pwd;ls)>kekka.log Exécutez les commandes ensemble

"" (Guillemet simple)

$echo $DATE > 31 août $echo '$DATE' >$DATE Il est émis sous forme de chaîne de caractères.

"" (Guillemet double)

$echo $DATE > 31 août $ echo "La date d'aujourd'hui est le $ DATE"

La date d'aujourd'hui est le 31 août. ''Pareil que. La partie variable de $ est sortie en tant que variable.

`` (Retour de citation)

$ echo "Le répertoire courant est" pwd "."

Le répertoire courant est / home / lpic.

$ echo "Le répertoire courant est $ (pwd) '."

Le répertoire courant est / home / lpic.

Le résultat de la commande peut être sorti. Il est recommandé car il est plus facile de comprendre comment écrire ci-dessous.

less

Opération clé Explication
Touche espace Faites défiler vers le bas d'un écran
touche b Un écran défile vers le haut
/ Recherche descendante
? Recherche ascendante

| (Tuyau)

ls | wc -l Passez le résultat de l'exécution de la commande ls à l'entrée standard de wc.

dmesg|less Passez les messages du noyau à une entrée moins standard.

> (Rediriger)

$ls -l > filelist Mettez le résultat d'affichage dans la liste de fichiers.

$ls -l >> filelist Ajout du résultat d'affichage à la fin de la liste de fichiers.

< $grep "lpic" <target.txt>result.txt Entrée standard

$cat > sample.txt <<EOF Sortie jusqu'à l'entrée EOF.

2> $find / -name "*.tmp" 2> error.log Enregistrez uniquement la sortie d'erreur dans le fichier.

cat cat file1 file2 > newfile Application: écrire le fichier1 fichier2 dans un nouveau fichier en continu

option Explication
-n Affichage avec numéro de ligne

nl Affichez des fichiers texte avec des numéros de ligne.

tail Afficher 10 lignes à partir de la dernière ligne.

option Explication
-n nombre de lignes Afficher uniquement le nombre de lignes spécifié
-f Affichage en temps réel. Mettre à jour lorsqu'il est ajouté pendant l'affichage.(ctrl+Terminer par c)

tr $cat /etc/hosts | tr 'a-z' 'A-Z' Convertir toutes les lettres minuscules du fichier en majuscules et en chat

split $split -100 sample.txt s_sample.

sample.txt s_sample.aa s_sample.ab s_sample.ac

Séparez sample.txt dans d'autres fichiers toutes les 100 lignes. (Les noms de fichiers se terminent par aa, ab, ac ...)

hacher

commander Explication
md5sum Sortie de la valeur de hachage par MD5
sha1sum
sha256sum
sha512sum

$sha1sum sample.txt Afficher la valeur de hachage SHA1 du fichier sample.txt

grep $grep -i ab sample.txt

$grep -v '^#' /etc/httpd/conf/httpd.conf S'affiche sans la ligne avec # au début (commenter). (^: Expression régulière pour le premier caractère)

option Explication
-i Recherche insensible à la casse
-v Afficher les lignes où les motifs ne correspondent pas

vi

Mode d'entrée

commander Explication
i Entrez du texte avant le curseur
a Entrez du texte après le curseur
I Déplacez le curseur sur le premier caractère de la ligne et entrez le texte juste avant
A Déplacez le curseur à la fin de la ligne et entrez le texte immédiatement après
o Insérez une ligne vide sous la ligne actuelle et entrez du texte sur cette ligne
O Insérez une ligne vide au-dessus de la ligne actuelle et entrez du texte sur cette ligne

Mode de commande

commander Explication
h Déplacer un caractère vers la gauche
l Déplacez un caractère vers la droite
k Monter d'une ligne
j Descendre d'une ligne
o Se déplacer au début de la ligne
$ Aller à la fin de la ligne
H Aller au début de la ligne en haut de l'écran
L Aller au début de la ligne en bas de l'écran
gg Passer à la première ligne du fichier
G Passer à la dernière ligne du fichier
nG Aller à la ligne n du fichier
:n Aller à la ligne n du fichier

Déplacer 5 caractères vers la gauche en 5h

commander Explication
:q Quitter sans enregistrer dans un fichier
:q! Quittez sans enregistrer ce que vous modifiez
:wq Enregistrez le contenu en cours de modification et quittez
:w Écraser et enregistrer le fichier avec le contenu en cours de modification
:e! Restaurer le dernier contenu enregistré
:!commander Exécuter la commande shell sans quitter vi
:r!commander Insérez le résultat de l'exécution de la commande shell

:! Vous pouvez exécuter la commande ls avec ls exécutant vi.

vi commande d'édition

commander Explication
dd Supprimer la ligne actuelle
dw Supprimer d'un curseur au mot suivant
yy Copier la ligne actuelle dans le tampon
:w Écraser et enregistrer le fichier avec le contenu en cours de modification
p Collez le contenu du tampon sous la ligne actuelle
P Collez le contenu du tampon au-dessus de la ligne courante
x Supprimer le caractère à la position du curseur(delete)
X Supprimer le caractère avant la position du curseur(backspace)

Supprimez 5 lignes de la position du curseur avec 5dd.

commande de recherche vi

commander Explication
/ Recherche en arrière à partir de la position du curseur
? Recherche en arrière à partir de la position du curseur
n Rechercher
N Rechercher(Direction inverse)
:noh Ne pas mettre en évidence les candidats
:%s/A/B/ Remplacez la première chaîne trouvée A par la chaîne B
:%s/A/B/g Remplacez toute la chaîne A par la chaîne B
commander Explication
:set nu Afficher le numéro de ligne
:set nonu Masquer le numéro de ligne h
:set ts=Largeur de l'onglet Largeur de l'ongletを数値で指定する

Gestion de fichiers

gzip

commander Explication
-d Extraire le fichier compressé
-c Sortie vers sortie standard
-r Compresser tous les fichiers du répertoire

$gzip datafile Compresser le fichier

$gzip -r sampled Compresser individuellement tous les fichiers du répertoire échantillonné

$gzip -c datafile >datafile.gz Compressé quittant le dossier avant la compression

$bzip2 datafile bzip prend plus de temps que gzip mais a une efficacité de compression plus élevée. (Ajouter l'option -d pour la décompression)

$xz datafile xz prend plus de temps que bzip mais a une efficacité de compression plus élevée. (Ajouter l'option -d pour la décompression)

zcat,bzcat,xzcat $zcat sample.gz Vérifiez le fichier texte compressé sans le décompresser.

tar Vous pouvez combiner des fichiers et des répertoires dans un seul fichier d'archive et l'extraire. Identique à la compression gzip avec l'option z.

commander Explication
-c Créer une archive
-x Extraire les fichiers de l'archive
-t Vérifiez le contenu de l'archive
-nom de fichier f Spécifiez le nom du fichier d'archive
-z compression gzip/Déploiement
-j compression bzip2/Déploiement
-J compression xz/Déploiement
-v Afficher des informations détaillées
-u Ajouter uniquement les fichiers plus récents avec le même nom dans l'archive
-r Ajouter des fichiers à archiver
-N Ne cible que les données plus récentes que la date spécifiée
-M Divisé en plusieurs appareils
-delete Supprimer les fichiers de l'archive

tar cvf /dev/st0 /home Créez un fichier archive pour / home dans / dev / st0

tar xvzf software.tar.gz Extrayez le fichier d'archive dans le répertoire actuel.

tar tf /dev/sdb1 Affichez le contenu de l'archive située dans / dev / sb1.

tar xvf /dev/sdb1 var/log/secure /var

cpio $ls | cpio -o >/tmp/backup Sauvegardez le répertoire actuel en tant que fichier / tmp / backup.

dd $dd if=/dev/sdb of=/dev/sdc Exportez le contenu du disque connecté à / dev / sdb vers / dev / sdb tel quel.

La commande dd peut gérer le contenu des périphériques tels que les disques durs et les CD-ROM tels quels. La commande cp copie simplement le fichier.

commander Explication
-if Spécifiez le fichier d'entrée
-of Spécifiez le fichier de sortie

chmod

option Explication
-R Modifier les autorisations de tous les fichiers sous le répertoire spécifié
Cible Explication
u propriétaire
g groupe
o Autres utilisateurs
a Tous les utilisateurs
opération Explication
+ Ajouter des autorisations
- Supprimer les autorisations
= Spécifiez les autorisations
Type d'autorisation Explication
r Lire l'autorisation
w Autorisation d'écriture
x Autorisation d'exécution
s SUID or SGID
t Bit collant

$chmod go+w samplefile Donner l'autorisation d'écriture aux groupes et aux autres utilisateurs

$chmod o-rw samplefile Supprimer l'autorisation d'exécution en écriture des autres utilisateurs

$chmod 644 samplefile Changé en 644

SUID,SGID Peut être exécuté avec l'autorisation du propriétaire du fichier SUID

chmod u+s samplefile

Les droits d'accès au groupe SGID s'appliquent.

Bit collant

Même si vous disposez d'une autorisation en écriture, vous ne pouvez pas supprimer les fichiers appartenant à d'autres utilisateurs que vous.

chmod o+t sampledir

umask Le droit d'accès par défaut est défini.

$umask 0002

La valeur par défaut est 777 pour les répertoires et 666 pour les fichiers moins umask.

d→775 file→664

chown

option Explication
-R Changer le propriétaire du répertoire spécifié et tous les fichiers qu'il contient

Lien dur

Faites référence à la même entité dans chaque fichier. $ln file.original file.link_hard

Lien symbolique

Indique l'emplacement sous le lien. (Raccourci) $ln -s file.original file.link_hard

ls -l Vérifiez le lien créé.

Ajoutez d à la copie du lien symbolique.

cp -d file.link_sym file.link3

S'il n'est pas ajouté, le fichier source du lien sera copié. cp file.link_sym file.link2

top Surveillance de processus Terminer par Q

Exécution des tâches en arrière-plan

updatedb & Le traitement peut être exécuté en arrière-plan en ajoutant &.

jobs Vous pouvez vérifier les travaux en cours avec la commande jobs.

Je veux que vous continuiez à le faire lorsque vous quittez votre siège pendant longtemps. Si vous voulez qu'il s'exécute même si vous vous déconnectez. Ajoutez nohub. $nohup updatedb &

Si vous souhaitez exécuter le travail en cours d'exécution en arrière-plan. Pause avec ctrl + z → bg 1 (1 est le numéro du travail, les travaux) Si vous voulez changer l'arrière-plan au premier plan, fg

free Disponibilité de la mémoire

option Explication
-m Afficher en Mo
-s secondes Continuer à afficher à des intervalles spécifiés

uptime Charge moyenne etc.

uname Vérification du système d'exploitation

uname -a vue détaillée

watch watch -n 10 uptime Exécutez la disponibilité toutes les 10 secondes.

nice Spécification de priorité lors de l'exécution d'une commande. $nice -n -10 updatedb

Gestion des fichiers de gestion des appareils

find $find /root -name "*.txt" Recherche par nom de fichier

Formule de recherche Explication
-nom Nom du fichier Recherche par nom de fichier
-à l'heure, date et heure Rechercher par heure du dernier accès
-mtime date et heure Rechercher par heure de la dernière mise à jour
-droits d'accès perm Recherche par droit d'accès
-taille taille Recherche par taille de fichier
-type Type de fichier Recherche par type de fichier f:Fichier l:Symbolique d:annuaire
-nom d'utilisateur Recherche par propriétaire de fichier
-print Afficher les fichiers correspondants
-commande exec || ; Exécuter la commande pour les fichiers correspondants
-commande ok || ¥; Exécuter la commande pour les fichiers correspondants(Avec confirmation)

$find /data -type f -mtime -1 Rechercher les fichiers qui ont été mis à jour au cours du dernier jour

$find /usr/bin -type f -perm -u+s Recherchez les fichiers avec SUID défini dans le répertoire / usr / bin.

$find /tmp -user student Recherchez le répertoire de fichiers dont le propriétaire est étudiant.

$find -atime +30 -exec rm {}¥; Recherchez et supprimez les fichiers qui n'ont pas été consultés depuis plus de 30 jours.

Shell et script shell

alias

$alias ls='ls -l' Vous pouvez donner à la commande un alias. $alias lsless='ls -l|less'

$unalias lsless Libérer l'alias d'ensemble

fonction

$function lslink(){ls -l|grep '^l';} La fonction lslink qui affiche uniquement les liens symboliques (commençant par l)

$function lslink(){ls -l $1 | grep '^1';} Argument avec 1 $. Vous pouvez mettre un répertoire, etc. dans l'argument.

$declare -f lslink Afficher uniquement les fonctions définies.

unset lslink Suppression de la fonction lslink.

fichier de configuration bash

Fichier Explication
/etc/profile Exécuté à la connexion et référencé par tous les utilisateurs
/etc/bash.basic Exécuté au démarrage de bash et référencé par tous les utilisateurs
/etc/bashrc ~/.Référencé depuis bashrc. Référencé depuis le début de bash.
~/.bash_profile Exécuté à la connexion
~/.bash_login ~/.bash_S'il n'y a pas de profil, il sera exécuté lors de la connexion
~/.profile ~/.bash_profil aussi~/.bash_S'il n'y a pas de connexion, exécutez à la connexion
~/.bashrc Exécuté au démarrage de bash
~/.bash_logout Exécuté à la déconnexion

Script shell

Exécuter (nécessite une autorisation de lecture) $bash lsld

$source lsld

$. lsld

(Autorisation d'exécution requise) chmod a+x lsld $./lsls Il est exécuté avec le nom du fichier tel quel.

Nom de variable Explication
$0 Nom du fichier de script Shell(chemin complet)
$1 Premier argument
$2 Deuxième argument. Moins de 3 $ 4 $ 5 $
$# Nombre d'arguments.
$@ Tous les arguments(Espace délimité)
$* Tous les arguments(Le délimiteur est celui spécifié par la variable d'environnement IFS)

Valeur de retour du résultat de l'exécution

Terminaison normale → 0 Terminaison anormale → autre que 0

$echo $? 2

La valeur de retour est affectée à $?.

Contrôle de fichier

commande de test

Expression conditionnelle Résultat d'exécution
Test de format de fichier
-fichier f (Hors répertoires, etc.)Vrai s'il y a un fichier
-répertoire d Vrai s'il y a un répertoire
-fichier r Vrai si le fichier existe et est lisible
-fichier w Vrai si le fichier existe et est accessible en écriture
-x fichier Vrai si le fichier existe et est exécutable
-fichier s Vrai s'il y a un fichier plus grand que 0
-Fichier L Vrai s'il existe un fichier qui est un lien symbolique
Test des caractéristiques du fichier
-fichier électronique Vrai s'il y a un fichier
Fichier 1-nt fichier 2 Vrai si le fichier 1 a une heure de modification plus récente que le fichier 2
Fichier 1-ot fichier 2 Vrai si le fichier 1 est plus ancien que le fichier 2
Test numérique
Numéro 1-eq numéro 2 Vrai si les nombres 1 et 2 sont égaux
Numéro 1-ge numéro 2 Vrai si le nombre 1 est supérieur ou égal au nombre 2
Numéro 1-gt numéro 2 Vrai si le nombre 1 est supérieur au nombre 2
Numéro 1-le numéro 2 Vrai si le nombre 1 est inférieur ou égal au nombre 2
Numéro 1-lt numéro 2 Vrai si le nombre 1 est inférieur ou égal au nombre 2
Numéro 1-ne numéro 2 Vrai si les nombres 1 et 2 ne sont pas égaux
Test de cordes
-n chaîne Vrai si la longueur de la chaîne est supérieure à 0
-chaîne z Vrai si la longueur de la chaîne est 0
Chaîne 1=Chaîne 2 Vrai si les deux chaînes sont égales
Chaîne 1!=Chaîne 2 Vrai si les deux chaînes ne sont pas égales
Tester la jointure logique
!conditions conditionsが偽であれば真
Condition 1-a Condition 2 Vrai si les deux expressions conditionnelles sont vraies(and)
Condition 1-o Condition 2 Vrai si l'une des expressions conditionnelles est vraie(or)

Branche conditionnelle

si expression conditionnelle then Déclaration d'exécution 1 else Déclaration d'exécution 2 fi

Case case $1 in 1)echo "January";; 2)echo "February";; esac

read Vous pouvez entendre le nom de l'entrée standard. echo -n "Who are you?:" lire le nom d'utilisateur ← Demandez à l'utilisateur ici echo "Bonjour, $ username!" ← Utilisé ici

Première ligne de script shell #!/bin/bash

Tâches administratives

Fichier pour lequel le compte utilisateur est défini /etc/passwd

groupe /etc/group

useradd useradd -c "Linux User" -d /home/linux -s /bin/bash linuxuser

option Résultat d'exécution
-c commentaire Spécifiez le champ de commentaire
-répertoire d Spécifiez le répertoire de base
-chemin de s Spécifier le shell par défaut

Planification des tâches

cron

crontab Il se trouve sous le répertoire / var / spool / cron.

option Résultat d'exécution
-e Modifier crontab(Ne pas ouvrir directement avec vi etc.)
-l Affichage du contenu
-r Supprimer le fichier
-i Confirmer lors de la suppression
-nom d'utilisateur Modifier le fichier crontab avec le nom d'utilisateur(utilisateur root uniquement)

Format Commande minute, heure, jour, mois, jour

champ Résultat d'exécution
journée 0-Entier jusqu'à 7(0,7:Dimanche au 6 samedi)

15 23 * * * /usr/local/bin/backup (Commence tous les jours à 23h15)

0 9,12 * * 1 /usr/local/bin/syscheck (Commence à 9h00 et 12h00 le lundi)

0 */2 * * * /usr/local/bin/syscheck (Commencez toutes les 2 heures)

at Planification unique $at 5:00 tomorrow at>/usr/local/sbin/backup at> ^ D ← Entrez la touche ctrl + D pour terminer.

systemd Il peut être activé après une certaine période de temps à partir d'un événement.

Email

mail [-s subject] [adresse e-mail de destination ou nom d'utilisateur]

mail -s samplemail student Bonjour, étudiant! ← Corps . EOT

mail Vérifier le courrier reçu

Bases du réseau

ping

option Résultat d'exécution
-c fois Envoyer des paquets un certain nombre de fois
-i intervalle Intervalle spécifié(Secondes)Envoyez chaque poche

traceroute Affiche l'itinéraire que le paquet voyage vers l'hôte spécifié.

hostname Affichez le nom d'hôte actuel.

Si vous spécifiez un nom d'hôte, modifiez le nom d'hôte.

netstat Affichez diverses informations sur le réseau. Vérification des ports ouverts, etc.

nc Commande Cat sur le réseau

$nc -l -p 12345 -o listen.log Il écoute sur le port 12345 et envoie les données reçues dans le fichier listen.log.

$nc centos7.example.com 12345<data.txt Envoyez le contenu du fichier data.txt sur le port 12345 de l'hôte.

ifconfig Confirmez l'adresse IP.

Fichier de configuration DNS

/etc/resolv.conf

/etc/nsswitch.conf Sélectionnez l'ordre de priorité des hôtes ou du serveur DNS.

host Connaissez l'adresse IP de l'hôte. Connaissez l'hôte d'ip.

Sécurité

nmap

$nmap www.example.net Vous pouvez vérifier le numéro de port ouvert et le nom du service (ssh, http).

Comment vérifier le fichier pour lequel SUID est défini.

Vérifiez régulièrement. #find / -perm -u+s -ls

Arrêter la connexion utilisateur générale

#touch /etc/nologin En créant un fichier nologin, les connexions autres que root sont interdites.

scp scp nom du fichier source de la copie [nom d'utilisateur @] hôte de destination de la copie: [nom du fichier de destination de la copie]

scp /etc/hosts sv3.example.jp:/tmp Copiez / etx / hosts de l'hôte local dans / tmp de l'hôte distant sv3.example.jp.

scp [nom d'utilisateur @] copier l'hôte source: copier le nom du fichier source copier le nom du fichier de destination

$scp sv3.example.jp:/etc/hosts . Copiez / etc / hosts de l'hôte distant sv3.example.jp dans le répertoire courant.

$scp data.txt [email protected]: Copiez le fichier data.txt de l'hôte local dans le répertoire personnel de l'utilisateur fred de l'hôte distant sv3.example.jp

Recommended Posts

Résumé Linux
Résumé des commandes Linux
[Linux] Résumé des commandes de base
Linux
Linux une touche de raccourci récapitulative
Résumé des types de distribution Linux
Résumé de l'API d'événement Linux FD
[Linux] [Réglage initial] [Flutter] Résumé
Un bref résumé de Linux
[Linux] Résumé de la commande utilisateur / groupe
[Linux] [C / C ++] Résumé de la méthode d'acquisition des traces
mémorandum Linux
Résumé Python
Commande Linux n ° 4
Commande Linux n ° 3
Présentation de Linux
Bases de Linux
direnv (linux)
Résumé de Django
Résumé de python-pptx
Organisation Linux
commandes linux
Pratique Linux
Ubuntu Linux 20.04
Résumé Python
Processus Linux
Résumé de Django
résumé pyenv
Autorisations Linux
Résumé de la chaîne de caractères 1
Commande Linux n ° 5
À propos de Linux
Bases de Linux
résumé pytest
Oubliez Linux
Résumé matplotlib
À propos de Linux
Commande Linux
À propos de Linux
Résumé des liens de construction du serveur Linux (CentOS7)
À propos de Linux
Redirection Linux
[Linux] Résumé des commandes de confirmation de version du middleware
Fonctionnement Linux pour les débutants Résumé des commandes de base
Résumé des petites techniques pour les commandes Linux
Liste des commandes Linux
[Linux] À propos de l'exportation
AtCoderBeginnerContest180 Examen et résumé
Résumé de Kaggle: Outbrain # 2
[Linux] Lien symbolique
Construction de l'environnement Linux
Résumé de la bibliothèque LINQ
Résumé de la configuration du Sphinx
désinstallation mono linux
RAID LVM Linux
Commandes réseau Linux