1. Basic reading
The read command receives input from standard input (keyboard) or input from other file descriptors (discussed later). After getting the input, the read command puts the data into a standard variable. The following is the simplest form of the read command
::
#!/bin/bash echo -n "Enter your name:" //参数-n的作用是不换行,echo默认是换行 read name //从键盘输入 echo "hello $name,welcome to my program" //显示信息 exit 0 //退出shell程序。 //********************************
Since the read command provides the -p parameter, a prompt can be specified directly on the read command line.
So the above script can be abbreviated as the following script::
#!/bin/bash read -p "Enter your name:" name echo "hello $name, welcome to my program" exit 0
In the above read, the variable after read only has one name, or there can be multiple. At this time, if multiple data are input, then The first data is given to the first variable, and the second data is given to the second variable. If there are too many input data, all the values will be given to the first variable. Will not end if too little input.
//******************************************
You do not need to specify variables in the read command line. If you do not specify a variable, the read command will place the received data in the environment variable REPLY.
For example::
read -p "Enter a number"
The environment variable REPLY contains all the data entered and can be used in shell scripts like other variables. Environment variable REPLY.
2. Timing input.
There are potential dangers in using the read command. The script will most likely stop and wait for user input. If the script must continue execution regardless of whether data is entered, a timer can be specified using the -t option.
-t option specifies the number of seconds the read command waits for input. When the timer expires, the read command returns a non-zero exit status;
#!/bin/bash if read -t 5 -p "please enter your name:" name then echo "hello $name ,welcome to my script" else echo "sorry,too slow" fi exit 0
In addition to inputting the timer, you can also set the read command to count the characters entered. When the number of characters entered reaches the predetermined number, it automatically exits and assigns the entered data to variables.
#!/bin/bash read -n1 -p "Do you want to continue [Y/N]?" answer case $answer in Y | y) echo "fine ,continue";; N | n) echo "ok,good bye";; *) echo "error choice";; esac exit 0
This example uses the -n option, followed by the value 1, to instruct the read command to exit as soon as it receives one character. Just press a character to answer, and the read command immediately
accepts the input and passes it to a variable. No need to press enter.
3. Silent reading (input is not displayed on the monitor)
Sometimes script user input is required, but the entered data is not expected to be displayed on the monitor. A typical example is entering a password, but of course there are many other data that need to be hidden. The
-s option enables the data entered in the read command not to be displayed on the monitor (actually, the data is displayed, but the read command sets the text color to the same color as the background).
#!/bin/bash read -s -p "Enter your password:" pass echo "your password is $pass" exit 0
4. Read files
Finally, you can also use the read command to read files on the Linux system.
Every time the read command is called, "one line" of text in the file will be read. When the file has no readable lines, the read command will exit with a non-zero status.
The key to reading a file is how to transfer the data in the text to the read command.
The most common method is to use the cat command on the file and pipe the results directly to the while command containing the read command
Example::
#!/bin/bash count=1 //赋值语句,不加空格 cat test | while read line //cat 命令的输出作为read命令的输入,read读到的值放在line中 do echo "Line $count:$line" count=$[ $count + 1 ] //注意中括号中的空格。 done echo "finish" exit
The above is the detailed content of Introducing the usage of read in linux. For more information, please follow other related articles on the PHP Chinese website!

The five core elements of Linux are: 1. Kernel, 2. Command line interface, 3. File system, 4. Package management, 5. Community and open source. Together, these elements define the nature and functionality of Linux.

Linux user management and security can be achieved through the following steps: 1. Create users and groups, using commands such as sudouseradd-m-gdevelopers-s/bin/bashjohn. 2. Bulkly create users and set password policies, using the for loop and chpasswd commands. 3. Check and fix common errors, home directory and shell settings. 4. Implement best practices such as strong cryptographic policies, regular audits and the principle of minimum authority. 5. Optimize performance, use sudo and adjust PAM module configuration. Through these methods, users can be effectively managed and system security can be improved.

The core operations of Linux file system and process management include file system management and process control. 1) File system operations include creating, deleting, copying and moving files or directories, using commands such as mkdir, rmdir, cp and mv. 2) Process management involves starting, monitoring and killing processes, using commands such as ./my_script.sh&, top and kill.

Shell scripts are powerful tools for automated execution of commands in Linux systems. 1) The shell script executes commands line by line through the interpreter to process variable substitution and conditional judgment. 2) The basic usage includes backup operations, such as using the tar command to back up the directory. 3) Advanced usage involves the use of functions and case statements to manage services. 4) Debugging skills include using set-x to enable debugging mode and set-e to exit when the command fails. 5) Performance optimization is recommended to avoid subshells, use arrays and optimization loops.

Linux is a Unix-based multi-user, multi-tasking operating system that emphasizes simplicity, modularity and openness. Its core functions include: file system: organized in a tree structure, supports multiple file systems such as ext4, XFS, Btrfs, and use df-T to view file system types. Process management: View the process through the ps command, manage the process using PID, involving priority settings and signal processing. Network configuration: Flexible setting of IP addresses and managing network services, and use sudoipaddradd to configure IP. These features are applied in real-life operations through basic commands and advanced script automation, improving efficiency and reducing errors.

The methods to enter Linux maintenance mode include: 1. Edit the GRUB configuration file, add "single" or "1" parameters and update the GRUB configuration; 2. Edit the startup parameters in the GRUB menu, add "single" or "1". Exit maintenance mode only requires restarting the system. With these steps, you can quickly enter maintenance mode when needed and exit safely, ensuring system stability and security.

The core components of Linux include kernel, shell, file system, process management and memory management. 1) Kernel management system resources, 2) shell provides user interaction interface, 3) file system supports multiple formats, 4) Process management is implemented through system calls such as fork, and 5) memory management uses virtual memory technology.

The core components of the Linux system include the kernel, file system, and user space. 1. The kernel manages hardware resources and provides basic services. 2. The file system is responsible for data storage and organization. 3. Run user programs and services in the user space.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Dreamweaver CS6
Visual web development tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
