A Step‑by‑Step Tutorial for Writing Basic Shell Scripts on Linux
This article walks beginners through creating, editing, granting permissions to, and executing simple Bash scripts such as hello.sh and name_check.sh, while also covering common pitfalls, directory organization, and essential command‑line tools for effective shell scripting.
Many newcomers wonder where to write shell scripts; this guide starts from the very basics and shows you how to create, edit, and run scripts on a local machine, virtual machine, or cloud server using a terminal or SSH.
Recommended environment
Operating system: any Linux/Unix system (physical, VM, or cloud).
Login method: direct terminal access or ssh for remote servers.
Editor: vim (recommended) or nano for beginners.
Creating the first script: hello.sh
Step 1 – Choose a directory
Store all scripts under ~/scripts for easy management.
mkdir -p ~/scripts
cd ~/scriptsStep 2 – Create the file
Open the file with vim hello.sh . Press i to enter insert mode and paste the following content:
#!/bin/bash
echo "你好,Shell 脚本!"Step 3 – Save and exit
Press Esc .
Type :wq and press Enter .
File saved successfully!
Step 4 – Make the script executable
Run chmod +x hello.sh to grant execution permission.
chmod +x hello.shStep 5 – Execute the script
./hello.shOutput:
你好, Shell 脚本!Common error troubleshooting
Error
Cause
Solution
command not foundMissing
./before script name.
Run
./hello.sh.
Permission deniedNo execute permission.
Run
chmod +x hello.sh.
No such file or directoryWrong filename or path.
Use
lsto verify location.
Second example: name_check.sh (user input and conditional)
Step 1 – Create the file
cd ~/scripts
vim name_check.shEnter insert mode ( i ) and paste:
#!/bin/bash
read -p "请输入你的名字:" name
if [ "$name" == "root" ]; then
echo "欢迎管理员大人!"
else
echo "你好,$name"
fiStep 2 – Save, exit, and add permission
:wq chmod +x name_check.shStep 3 – Run and test
./name_check.shWhen you type jack you see 你好,jack ; typing root prints 欢迎管理员大人! .
This demonstrates variables, user input, and conditional statements in Bash.
Organizing scripts
Keep scripts in a structured directory, for example:
~/scripts/
├── base/ # beginner scripts
├── monitor/ # monitoring scripts
├── backup/ # backup scripts
└── deploy/ # deployment scriptsMove your scripts into the appropriate folder:
mkdir -p ~/scripts/base
mv hello.sh name_check.sh ~/scripts/base/Final checklist
Create script files with vim and save using :wq .
Grant execution rights with chmod +x .
Use variables, conditionals, and user input.
Store scripts in a well‑organized directory hierarchy.
These steps form the foundation for writing effective shell scripts before moving on to cron jobs, functions, or logging.
IT Xianyu
We share common IT technologies (Java, Web, SQL, etc.) and practical applications of emerging software development techniques. New articles are posted daily. Follow IT Xianyu to stay ahead in tech. The IT Xianyu series is being regularly updated.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.