A quoi sert la commande Linux read ?

Feb 15, 2023 am 10:39 AM
linux

Sous Linux, la commande read est utilisée pour lire la saisie au clavier. Elle peut lire une ligne de données à partir de l'entrée standard et attribuer la valeur de chaque champ de la ligne de saisie à une variable shell. Lorsque la redirection est utilisée, elle peut être. lire Une ligne de données dans le fichier, la syntaxe est "lire [paramètre] [nom ...]".

A quoi sert la commande Linux read ?

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

Introduction à la commande Linux read

La commande read sous Linux lit une ligne à partir de l'entrée standard et attribue la valeur de chaque champ de la ligne d'entrée à une variable shell.

Syntaxe

read [-ers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...]
Copier après la connexion

Parameters

ParametersDescription
-a suivie d'une variable, qui sera considérée comme un tableau, puis affectée d'une valeur. La valeur par défaut est les espaces . séparateur.
-d est suivi d'un identifiant. En fait, seul le premier caractère qui le suit est utile comme signe de fin.
-p est suivi d'un message d'invite, c'est-à-dire que le message d'invite est imprimé avant la saisie.
-eVous pouvez utiliser la fonction de complétion de commande lors de la saisie.
-n suivi d'un chiffre définit la longueur du texte saisi, ce qui est très pratique.
-r bouclier, s'il n'y a pas cette option, il sera utilisé comme personnage d'échappement, s'il y en a, ce sera un personnage normal.
-sMode silencieux, ne s'affiche plus à l'écran lors de la saisie de caractères, comme la saisie d'un mot de passe lors de la connexion.
-t suivi de secondes définit le temps d'attente pour la saisie des caractères.
-u suivi de fd, lit le descripteur de fichier, qui peut être nouvellement ouvert par exec.

Description

La commande interne read est utilisée pour lire une seule ligne de données à partir de l'entrée standard. Cette commande peut être utilisée pour lire la saisie au clavier et, lors de l'utilisation de la redirection, peut lire une ligne de données à partir d'un fichier.

Exemple d'utilisation de la commande read

1. Lecture simple

#!/bin/bash
echo "请您输入网站名: "  
#读取从键盘的输入  
read website  
echo "你输入的网站名是 $website"  
exit 0  #退出
Copier après la connexion

2. Lecture de fichiers

Chaque fois que vous appelez la commande read, "une ligne" de texte dans le fichier. sera lu. Lorsque le fichier ne comporte aucune ligne lisible, la commande read se termine avec un statut différent de zéro.

Nous pouvons utiliser la commande cat pour diriger les résultats directement vers la commande while contenant la commande read.

Le contenu du fichier de test test.txt est le suivant :

AAAAAAAAAAAAAAAAAAAAAA
BBBBBBBBBBBBBBBBBBBBBB
CCCCCCCCCCCCCCCCCCCCCCCCC
DDDDDDDDDDDDDDDDDDDDDD
================ Chuanzhi Podcast

Le scénario est comme suit, vous pouvez mettre le script Allez sur xxx.sh pour exécuter

#!/bin/bash
count=1
cat test.txt | while read line      
# cat 命令的输出作为read命令的输入,read读到>的值放在line中
do
   echo "Line $count:$line"
   count=$[ $count + 1 ]          # 注意中括号中的空格。
done
echo "finish"
exit 0
Copier après la connexion

3 Exemple :

read 1987name
从标准输入读取输入并赋值给变量1987name。
 
read first last
从标准输入读取输入到第一个空格或者回车,将输入的第一个单词放到变量first中,并将该行其他的输入放在变量last中。
 
read
从标准输入读取一行并赋值给特定变量REPLY。
 
read -a arrayname
把单词清单读入arrayname的数组里。
 
read -p "text"
打印提示(text),等待输入,并将输入存储在REPLY中。
 
read -r line
允许输入包含反斜杠。
 
read -t 3
指定读取等待时间为3秒。
 
read -n 2 var
从输入中读取两个字符并存入变量var,不需要按回车读取。
 
read -d ":" var
用定界符“:”结束输入行。
Copier après la connexion

Ajoutez un exemple de non-autorisation d'affichage du mot de passe lors de la saisie du mot de passe dans le fichier. Terminal.

方法1:
 
#!/bin/bash
read -p "输入密码:" -s pwd
echo
echo password read, is "$pwd"
 
方法2:
 
#!/bin/bash
stty -echo
read -p "输入密码:" pwd
stty echo
echo
echo 输入完毕。
Copier après la connexion

Parmi eux, l'option -echo interdit l'envoi de la sortie au terminal, tandis que l'option echo permet d'envoyer la sortie. -echo禁止将输出发送到终端,而选项echo则允许发送输出。 

 注意:使用echo命令输出变量值时,必须在变量名前添加符号$

Remarque : lorsque vous utilisez la commande echo pour générer des valeurs de variable, vous devez ajouter le symbole $ avant le nom de la variable. Sinon, echo affichera directement le nom de la variable.

Recommandations associées : "Tutoriel vidéo Linux

"🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

À quoi sert Linux? À quoi sert Linux? Apr 12, 2025 am 12:20 AM

Linux convient aux serveurs, aux environnements de développement et aux systèmes intégrés. 1. En tant que système d'exploitation de serveurs, Linux est stable et efficace, et est souvent utilisé pour déployer des applications à haute monnaie. 2. En tant qu'environnement de développement, Linux fournit des outils de ligne de commande efficaces et des systèmes de gestion des packages pour améliorer l'efficacité du développement. 3. Dans les systèmes intégrés, Linux est léger et personnalisable, adapté aux environnements avec des ressources limitées.

Comment démarrer Apache Comment démarrer Apache Apr 13, 2025 pm 01:06 PM

Les étapes pour démarrer Apache sont les suivantes: Installez Apache (Commande: Sudo apt-get install Apache2 ou téléchargez-le à partir du site officiel) Start Apache (Linux: Sudo SystemCTL Démarrer Apache2; Windows: Cliquez avec le bouton droit sur le service "APACHE2.4" et SELECT ") Vérifiez si elle a été lancée (Linux: SUDO SYSTEMCTL STATURE APACHE2; (Facultatif, Linux: Sudo SystemCTL

Que faire si le port Apache80 est occupé Que faire si le port Apache80 est occupé Apr 13, 2025 pm 01:24 PM

Lorsque le port Apache 80 est occupé, la solution est la suivante: découvrez le processus qui occupe le port et fermez-le. Vérifiez les paramètres du pare-feu pour vous assurer qu'Apache n'est pas bloqué. Si la méthode ci-dessus ne fonctionne pas, veuillez reconfigurer Apache pour utiliser un port différent. Redémarrez le service Apache.

Comment surveiller les performances de Nginx SSL sur Debian Comment surveiller les performances de Nginx SSL sur Debian Apr 12, 2025 pm 10:18 PM

Cet article décrit comment surveiller efficacement les performances SSL des serveurs Nginx sur les systèmes Debian. Nous utiliserons NginxExporter pour exporter des données d'état NGINX à Prometheus, puis l'afficher visuellement via Grafana. Étape 1: Configuration de Nginx Tout d'abord, nous devons activer le module Stub_Status dans le fichier de configuration NGINX pour obtenir les informations d'état de Nginx. Ajoutez l'extrait suivant dans votre fichier de configuration Nginx (généralement situé dans /etc/nginx/nginx.conf ou son fichier incluant): emplacement / nginx_status {Stub_status

Comment commencer la surveillance d'Oracle Comment commencer la surveillance d'Oracle Apr 12, 2025 am 06:00 AM

Les étapes pour démarrer un écouteur Oracle sont les suivantes: cochez l'état de l'écouteur (en utilisant la commande LSNRCTL Status) pour Windows, démarrez le service "TNS Écouteur" dans Oracle Services Manager pour Linux et Unix, utilisez la commande LSNRCTL LSNRCTL pour démarrer l'auditeur pour exécuter la commande LSNRCTL STAT

Comment configurer un bac de recyclage dans le système Debian Comment configurer un bac de recyclage dans le système Debian Apr 12, 2025 pm 10:51 PM

Cet article présente deux méthodes de configuration d'un bac de recyclage dans un système Debian: une interface graphique et une ligne de commande. Méthode 1: Utilisez l'interface graphique Nautilus pour ouvrir le gestionnaire de fichiers: Recherchez et démarrez le gestionnaire de fichiers Nautilus (généralement appelé "fichier") dans le menu de bureau ou d'application. Trouvez le bac de recyclage: recherchez le dossier de bac de recyclage dans la barre de navigation gauche. S'il n'est pas trouvé, essayez de cliquer sur "Autre emplacement" ou "ordinateur" pour rechercher. Configurer les propriétés du bac de recyclage: cliquez avec le bouton droit sur "Recycler le bac" et sélectionnez "Propriétés". Dans la fenêtre Propriétés, vous pouvez ajuster les paramètres suivants: Taille maximale: Limitez l'espace disque disponible dans le bac de recyclage. Temps de rétention: définissez la préservation avant que le fichier ne soit automatiquement supprimé dans le bac de recyclage

Comment redémarrer le serveur Apache Comment redémarrer le serveur Apache Apr 13, 2025 pm 01:12 PM

Pour redémarrer le serveur Apache, suivez ces étapes: Linux / MacOS: Exécutez Sudo SystemCTL Restart Apache2. Windows: Exécutez net stop apache2.4 puis net start apache2.4. Exécuter netstat -a | Findstr 80 pour vérifier l'état du serveur.

Comment optimiser les performances de Debian Readdir Comment optimiser les performances de Debian Readdir Apr 13, 2025 am 08:48 AM

Dans Debian Systems, les appels du système ReadDir sont utilisés pour lire le contenu des répertoires. Si ses performances ne sont pas bonnes, essayez la stratégie d'optimisation suivante: simplifiez le nombre de fichiers d'annuaire: divisez les grands répertoires en plusieurs petits répertoires autant que possible, en réduisant le nombre d'éléments traités par appel ReadDir. Activer la mise en cache de contenu du répertoire: construire un mécanisme de cache, mettre à jour le cache régulièrement ou lorsque le contenu du répertoire change et réduire les appels fréquents à Readdir. Les caches de mémoire (telles que Memcached ou Redis) ou les caches locales (telles que les fichiers ou les bases de données) peuvent être prises en compte. Adoptez une structure de données efficace: si vous implémentez vous-même la traversée du répertoire, sélectionnez des structures de données plus efficaces (telles que les tables de hachage au lieu de la recherche linéaire) pour stocker et accéder aux informations du répertoire

See all articles