Linux命令:bash

bash 命令

基本介绍

bash (Bourne-Again Shell) 是 Linux 和 Unix 系统中最常用的命令行解释器。它是 GNU 项目的一部分,兼容原始的 Bourne Shell,并添加了许多新功能,如命令历史、命令补全、别名、函数等。bash 是大多数 Linux 发行版的默认 shell。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

语法

bash [选项] [脚本文件]

启动选项

选项说明
-c <command>执行指定的命令后退出
-i启动交互式 shell
-l作为登录 shell 启动
-r启动受限 shell
-s从标准输入读取命令
-v显示读取的输入行
-x执行命令前显示命令及其参数

常用内置命令

文件和目录操作

命令说明
cd <dir>切换目录
pwd显示当前目录
ls列出目录内容
mkdir <dir>创建目录
rmdir <dir>删除空目录
rm <file>删除文件或目录
cp <src> <dst>复制文件
mv <src> <dst>移动或重命名文件

变量和环境

命令说明
export <var>=<value>设置环境变量
set显示所有变量和函数
unset <var>删除变量
env显示环境变量
echo <text>输出文本
read <var>读取用户输入

流程控制

命令说明
if ... then ... fi条件判断
case ... esac多条件分支
for ... do ... done循环
while ... do ... done条件循环
until ... do ... done直到条件满足
break跳出循环
continue继续下一次循环

函数和脚本

命令说明
function <name> { ... }定义函数
<name>() { ... }定义函数(简化形式)
return <n>从函数返回
source <file>执行脚本文件
./<script>执行脚本文件

作业控制

命令说明
&amp;后台执行命令
jobs显示后台作业
fg将后台作业调至前台
bg将前台作业放至后台
kill <pid>终止进程
Ctrl+C终止当前命令
Ctrl+Z挂起当前命令

使用示例

1. 启动交互式 shell

bash

2. 执行单个命令

bash -c "echo 'Hello World'"

3. 执行脚本文件

bash script.sh

4. 作为登录 shell 启动

bash -l

5. 调试脚本(显示执行的命令)

bash -x script.sh

6. 读取并执行标准输入

echo "echo 'Hello'" | bash -s

7. 启动受限 shell

bash -r

8. 显示命令历史

history

9. 设置别名

alias ll='ls -la'

10. 定义函数

greet() { echo "Hello, $1!"; }
greet World

11. 后台执行命令

sleep 10 &amp;

12. 查看后台作业

jobs

13. 条件判断

if [ -f "/etc/passwd" ]; then echo "File exists"; fi

14. 循环遍历文件

for file in *.txt; do echo "$file"; done

配置文件

系统级配置

  • /etc/profile - 全局登录 shell 配置
  • /etc/bashrc - 全局 bash 配置
  • /etc/profile.d/ - 额外配置脚本目录

用户级配置

  • ~/.bash_profile - 用户登录 shell 配置
  • ~/.bashrc - 用户 bash 配置
  • ~/.bash_history - 命令历史记录
  • ~/.bash_logout - 退出时执行的命令

特殊变量

变量说明
$0脚本名
$1-$9位置参数
$*所有位置参数(作为单个字符串)
$@所有位置参数(作为独立字符串)
$#参数数量
$$当前进程 ID
$?上一条命令的退出状态
$- 当前 shell 的选项标志
!$上一条命令的最后一个参数

命令行快捷键

快捷键说明
Ctrl+A移动到行首
Ctrl+E移动到行尾
Ctrl+U删除光标到行首
Ctrl+K删除光标到行尾
Ctrl+W删除光标前的单词
Ctrl+Y粘贴删除的内容
Ctrl+R搜索命令历史
Tab命令补全
Ctrl+D退出 shell

实用技巧

1. 查看命令历史

history | grep "apt"

2. 执行历史命令

!5      # 执行第5条命令
!apt    # 执行最近以apt开头的命令
!!      # 执行上一条命令

3. 命令替换

echo "当前目录: $(pwd)"

4. 管道和重定向

ls -la | grep ".txt" > output.txt

5. 后台执行并输出到日志

nohup ./script.sh > output.log 2>&1 &

6. 设置永久别名

echo "alias ll='ls -la'" >> ~/.bashrc
source ~/.bashrc

相关命令

命令说明
shBourne Shell(原始 shell)
cshC Shell
tcshTENEX C Shell
zshZ Shell
kshKorn Shell

注意事项

  1. 脚本执行权限:脚本需要执行权限(chmod +x script.sh)
  2. shebang 行:脚本开头应添加 #!/bin/bash
  3. 路径问题:当前目录不在 PATH 中时,需使用 ./script.sh
  4. 引号使用:单引号不展开变量,双引号展开变量
  5. 特殊字符:特殊字符如 $, \, | 需要转义
  6. 脚本调试:使用 bash -x script.sh 进行调试

总结

bash 是 Linux 系统中最常用的命令行 shell,提供了丰富的功能和灵活的脚本编程能力。掌握 bash 的基本用法是使用 Linux 系统的基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值