Shell介绍

什么是Shell

Shell是用户与Linux系统进行交互的接口。它接收用户命令,并将其转换为内核能够理解的语言。

常见的Shell

Shell类型 特点
Bash Linux系统默认Shell,功能强大
Zsh 更现代的Shell,支持更多特性
Fish 用户友好,自动补全功能强大

基本命令使用

1. 系统信息命令

显示当前用户名

whoami

显示主机名

hostname

显示系统信息

uname -a

显示日期和时间

date

2. 目录操作

显示当前目录

pwd

切换到指定目录

cd /path/to/directory

返回上级目录

cd ..

返回家目录

cd ~

创建目录

mkdir new_directory

创建多级目录

mkdir -p path/to/new/directory

3. 文件基本操作

创建空文件

touch file.txt

复制文件

cp source.txt destination.txt

移动文件

mv old_location.txt new_location.txt

删除文件

rm file.txt

交互式删除文件

rm -i file.txt

4. 文本查看命令

查看文件内容

cat file.txt

分页查看

less file.txt

查看文件头部

head -n 10 file.txt

查看文件尾部

tail -n 10 file.txt

实时查看文件更新

tail -f log.txt

命令行快捷键

1. 光标移动

快捷键 功能
Ctrl + A 移动到行首
Ctrl + E 移动到行尾
Ctrl + B 向左移动一个字符
Ctrl + F 向右移动一个字符
Alt + B 向左移动一个单词
Alt + F 向右移动一个单词

2. 编辑操作

快捷键 功能
Ctrl + U 删除光标到行首的内容
Ctrl + K 删除光标到行尾的内容
Ctrl + W 删除光标前的一个单词
Ctrl + Y 粘贴之前删除的文本
Ctrl + L 清屏

3. 历史命令

查看命令历史

history

搜索历史命令

Ctrl + R

重复执行上一条命令

!!

重复执行特定命令

!number

命令帮助

1. 获取命令帮助

查看命令手册

man command

查看命令简要说明

whatis command

查看命令帮助

command --help

查找命令位置

which command

2. 命令别名

创建命令别名

alias ll='ls -l'

查看所有别名

alias

删除别名

unalias ll

实用技巧

  1. 命令补全:

    • 使用Tab键自动补全命令和文件名
    • 双击Tab显示所有可能的补全选项
  2. 通配符使用:

    匹配任意字符

    ls *.txt
    

    匹配单个字符

    ls file?.txt
    

匹配指定范围

ls file[1-3].txt
  1. 重定向和管道:

    输出重定向

    echo "Hello" > file.txt
    

    追加输出

    echo "World" >> file.txt
    

使用管道过滤文本文件

ls -l | grep ".txt"

使用管道过滤进程

ps aux | grep "nginx"

注意事项

  1. 在执行危险操作前,先使用--helpman查看命令说明
  2. 使用sudo执行特权命令时要特别小心
  3. 养成使用historyCtrl + R搜索历史命令的习惯
  4. 合理使用Tab补全,提高效率
  5. 重要操作前先确认,可以使用-i参数进行交互式操作