树莓派如何保存命令行操作?

临时保存:使用 history 命令

适用场景:快速查看或重复执行近期输入的命令。
操作步骤:

  1. 查看历史命令:
    history
  2. 保存到文件(如 cmd_history.txt):
    history > cmd_history.txt

    注意:默认仅保存当前会话的命令,重启后可能丢失,需通过以下配置永久保存。


永久保存:修改 .bashrc 配置

适用场景:长期保留所有历史命令,避免重启丢失。
操作步骤:

  1. 编辑配置文件:

    nano ~/.bashrc
  2. 在文件末尾添加:

    # 增大历史命令保存数量(默认1000条)
    HISTSIZE=5000
    HISTFILESIZE=10000
    # 实时追加命令到历史文件(避免丢失)
    shopt -s histappend
    PROMPT_COMMAND="history -a;$PROMPT_COMMAND"
    # 忽略重复命令和空格开头的命令
    HISTCONTROL=ignoreboth
  3. 生效配置:

    source ~/.bashrc

    历史文件位置:~/.bash_history,可直接用文本编辑器查看。


脚本保存:创建可执行脚本

适用场景:需要重复执行固定命令序列(如自动化任务)。
操作步骤:

  1. 创建脚本文件(如 backup.sh):
    nano ~/backup.sh
  2. 写入命令(示例为备份脚本):
    #!/bin/bash
    sudo rsync -av /home/pi/Documents /mnt/external_drive/
    echo "备份完成!"
  3. 赋予执行权限:
    chmod +x ~/backup.sh
  4. 运行脚本:
    ./backup.sh

会话持久化:使用 screen 或 tmux

适用场景:长时间运行任务(如下载、编译),避免因断连中断。
以 tmux 为例:

  1. 安装 tmux:
    sudo apt install tmux
  2. 创建新会话:
    tmux new -s mysession
  3. 在会话中执行命令(如安装软件):
    sudo apt update && sudo apt upgrade -y
  4. 断开会话(命令继续后台运行):
    Ctrl+B → 按 D
  5. 恢复会话:
    tmux attach -t mysession

启动自动执行:配置系统服务

适用场景:开机自动运行关键命令(如挂载磁盘、启动程序)。
示例:创建 systemd 服务

  1. 创建服务文件:

    sudo nano /etc/systemd/system/myservice.service
  2. 写入配置(示例为启动 Python 脚本):

    [Unit]
    Description=My Startup Command
    [Service]
    ExecStart=/usr/bin/python3 /home/pi/myscript.py
    [Install]
    WantedBy=multi-user.target
  3. 启用服务:

    sudo systemctl enable myservice
    sudo systemctl start myservice

注意事项

  1. 权限管理:
    • 系统级操作(如挂载磁盘)需 sudo,脚本中谨慎使用 root 权限。
  2. 路径问题:
    • 脚本中使用绝对路径(如 /home/pi/ 而非 ),避免因环境变量出错。
  3. 资源占用:
    • 长期运行的任务(如 tmux)需监控 CPU/内存:top 或 htop。
  4. 备份历史文件:
    • 定期备份 ~/.bash_history 到外部存储,防止 SD 卡损坏丢失。

总结建议

  • 日常命令:通过 .bashrc 配置永久保存历史记录。
  • 重复任务:保存为脚本并添加执行权限。
  • 长时间任务:使用 tmux 或 screen 维持会话。
  • 开机自启:通过 systemd 服务实现自动化。

引用说明:本文方法参考树莓派官方文档(raspberrypi.com/documentation)及 Linux 命令行权威指南《The Linux Command Line》(William Shotts 著),系统服务配置遵循 systemd 标准规范(freedesktop.org)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5457.html

赞 (0)
酷番叔酷番叔
上一篇 2025年6月23日 23:13
下一篇 2025年6月23日 23:37

相关推荐

  • asp网站打包

    在现代化软件开发与部署流程中,将传统ASP(Active Server Pages)网站进行打包封装,已成为提升迁移效率、保障环境一致性的关键环节,无论是将老旧系统迁移至云服务器,还是进行本地服务器环境迁移,系统化的打包操作都能有效避免因依赖缺失、配置差异导致的服务异常,本文将围绕ASP网站打包的核心流程、工具……

    2026年1月1日
    16700
  • Android拦截短信广播的原理及实现方法是什么?,如何实现拦截短信广播

    在2026年,Android系统通过内置防骚扰功能和更严格的广播权限管理,使得第三方应用直接拦截短信广播变得几乎不可能,唯有成为默认短信应用或依赖系统级过滤才能实现有效拦截,随着Android安全模型持续进化,短信广播拦截已成为开发者与用户共同关注的焦点,本文基于2026年最新行业数据,深度解析拦截机制演变与可……

    2026年7月19日
    14400
  • 仿密码输入框_输入框

    仿密码输入框的设计核心在于通过视觉反馈与交互逻辑,在用户不输入真实密码的情况下,模拟出密码输入的安全感与操作反馈,从而提升表单填写体验与转化率,仿密码输入框的演进与设计逻辑从传统密码框到仿密码输入框的范式转变传统密码输入框以<input type=”password”>为基石,其核心逻辑是用户每输入……

    2026年8月23日
    7700
  • 物联网论文选题有哪些关键点需要注意?物联网专业论文选题方向

    2026年物联网论文选题应聚焦“AIoT深度融合、边缘计算赋能及行业垂直场景落地”,建议优先选择结合具体行业痛点(如智慧医疗、工业互联网)与前沿技术(如大模型、低代码平台)的交叉领域,以体现学术价值与应用前景, 2026年物联网选题核心趋势与方向随着生成式人工智能(AIGC)与物联网技术的全面融合,传统的“连接……

    2026年6月28日
    9800
  • 关系型数据库是什么,关系型数据库和非关系型数据库的区别

    关系型数据库通过结构化数据模型、ACID事务特性及SQL标准化查询语言,在需要强一致性、复杂关联查询及高事务可靠性的业务场景中,依然是2026年企业级应用的首选数据存储方案,核心优势与底层逻辑解析在2026年的技术生态中,尽管NoSQL和NewSQL技术百花齐放,关系型数据库(RDBMS)凭借数十年的技术沉淀……

    2026年6月1日
    12200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信