菜鸟科技网

电脑终端保存命令有哪些?

(最常用)

这是最常见的需求,即把终端里显示的文字、代码、运行结果等保存到一个文件中。

电脑终端保存命令有哪些?-图1
(图片来源网络,侵删)

使用重定向符号 >>>

这是最基本、最核心的方法,适用于几乎所有的命令行环境(如 Windows CMD, PowerShell, Linux/macOS Shell)。

  • > (覆盖写入):将命令的输出保存到文件中,如果文件已存在,将被清空并覆盖
  • >> (追加写入):将命令的输出追加到文件末尾,如果文件不存在,则会创建新文件;如果文件已存在,会添加在文件末尾,不会覆盖原有内容

基本语法:

命令 > 文件名.txt
命令 >> 文件名.txt

示例:

  • 保存 ls 命令的列表(覆盖)

    电脑终端保存命令有哪些?-图2
    (图片来源网络,侵删)
    ls -l > file_list.txt

    执行后,当前目录的详细列表会被保存到 file_list.txt 文件中,如果该文件已存在,其旧内容会丢失。

  • 保存 date 命令的输出(追加)

    date >> log.txt

    执行后,当前的日期和时间会被添加到 log.txt 文件的末尾,你可以多次运行此命令来记录日志。

  • 保存 ping 命令的结果(覆盖)

    电脑终端保存命令有哪些?-图3
    (图片来源网络,侵删)
    ping google.com > ping_result.txt

    执行后,ping Google 的所有结果都会被保存到 ping_result.txt

使用 tee 命令(Linux/macOS 及 Windows WSL/Git Bash)

tee 命令非常强大,它可以将数据同时输出到屏幕(标准输出)一个文件中,这对于需要实时看到输出并同时保存的场景非常有用。

  • -a 选项:表示追加(append),与 >> 类似,不覆盖文件。

基本语法:

命令 | tee 文件名.txt
命令 | tee -a 文件名.txt

示例:

  • 保存 df 命令的输出并同时查看

    df -h | tee disk_usage.txt

    执行后,磁盘使用情况会显示在屏幕上同时也会被保存disk_usage.txt 文件中。

  • 连续追加日志

    echo "System check completed at $(date)" | tee -a system_log.txt

    这会将带有时间戳的检查完成信息显示在屏幕上,并追加到日志文件。


保存终端的完整会话记录(包括输入和输出)

有时候你需要保存从打开终端到关闭终端期间的所有操作,包括你输入的每一条命令和它们的输出结果。

使用 script 命令(Linux/macOS 及 Windows WSL/Git Bash)

script 命令是专门为此设计的,它会记录你终端中的所有内容,直到你输入 exit 退出 script 会话为止。

基本语法:

script 文件名.txt

使用步骤:

  1. 在终端输入 script my_session.log 然后回车。
  2. 从现在开始,你在这个终端窗口里做的所有操作都会被记录到 my_session.log 文件中。
  3. 当你完成所有操作后,输入 exit 并回车,结束记录。
  4. 你可以用 cat my_session.log 查看完整的会话记录。

保存当前工作目录

这个需求比较特殊,通常是为了快速切换到之前工作的目录。

使用 pushdpopd 命令(Linux/macOS 及 Windows CMD/PowerShell)

这两个命令像一个“目录栈”,可以帮你保存和快速切换目录。

  • pushd 目录名:进入指定目录,同时将当前目录压入“栈”中保存。
  • popd:从“栈”中弹出之前保存的目录,并直接返回到该目录。

示例:

# 你在 /home/user/documents
cd /home/user/downloads
# 现在你在 downloads 目录
# 使用 pushd 保存当前目录并进入新目录
pushd /var/log
# 现在你在 /var/log 目录
# ... 在 /var/log 目录下工作
# 使用 popd 直接返回到之前保存的目录(即 /home/user/downloads)
popd
# 现在你又回到了 /home/user/downloads 目录

保存和恢复终端会话(断开会话后重新连接)

这对于长时间运行的任务(如编译代码、下载大文件)非常有用,你可以关闭电脑或断开SSH连接,稍后再回来,任务会从之前的地方继续。

使用 tmuxscreen(Linux/macOS 及 WSL)

这是专业开发者的利器,可以创建持久的终端会话。

  • tmux (推荐):

    • tmux new -s my_session:创建一个名为 my_session 的新会话。
    • 在这个会话里,你可以像在普通终端里一样工作。
    • Ctrl+B 然后按 D 可以分离会话(会话在后台继续运行)。
    • tmux attach -t my_session 可以重新连接my_session 会话。
  • screen:

    • screen -S my_session:创建一个新会话。
    • Ctrl+A 然后按 D 可以分离会话。
    • screen -r my_session 可以重新连接

特定编辑器中的保存命令

如果你在终端里打开了一个文本编辑器,那么保存命令是该编辑器自身的命令。

vimnvim (Neovim)

  • Esc 确保进入普通模式。
  • 输入 w 然后回车:保存(Write)。
  • 输入 wq 然后回车:保存并退出(Write and Quit)。
  • 输入 q! 然后回车:不保存强制退出(Quit without saving)。

nano

  • Ctrl + O保存(Write Out)。
  • 按回车确认文件名。
  • Ctrl + X退出(Exit),如果文件有修改,它会提示你是否保存。

总结表格

场景 目标 命令/方法 说明
保存命令输出 到新文件 command > file.txt 覆盖写入
到新文件(追加) command >> file.txt 追加写入
同时显示和保存 command \| tee file.txt 实时查看并保存
保存完整会话 所有输入和输出 script file.txt 记录直到 exit
保存当前目录 以便快速返回 pushd / popd 像一个目录栈
保存运行任务 断开/重连会话 tmux / screen 后台持久化运行
编辑器内保存 保存正在编辑的文件 vim: w
nano: Ctrl+O
编辑器内置命令

希望这份详细的总结能帮助你找到最适合你的“保存命令”!

分享:
扫描分享到社交APP
上一篇
下一篇