exa、fzf、bat软件的安装、使用


  文章仅涉及上述软件的简单使用,强烈个人向,更全面、详细的使用请参考官网。
 

一、新软件好在哪里

1. cat、less =》bat

  常用的cat命令作用是:连接多个文件并打印到标准输出。其缺点有:
  ① 查看体积较大文件时,文本在屏幕上快速闪过,快到根本无法看清内容。虽然提供了控制滚屏的快捷键,大家往往还是直接用Ctrl+c(中断)终止命令执行。还要用cat + 管道符 + less的方法处理。
  ②cat本身输出的内容是不带行号的,需要添加-n参数才能出来;
  ③cat的输入内容无法匹配搜索关键字,需要借助cat + 管道符 + less才能实现。
 
  此时bat的优点就体现出来了,它本身就相当于cat + 管道符 + less的功能,上述的缺点均能被解决,还附赠vim的自动高亮显示、文件内容过长时自动分页功能。
bat软件示例
 

2. ls => exa

  exa试图成为一个更有特色、更用户友好的 ls 版本,它的功能强大,比ls要友好,输出结果也会更快,最重要的是它不会与ls命令冲突。
  详细信息可见官网exa
 

3. ctrl+r => fzf

  它是一款使用 GO 语言编写的交互式的 Unix 命令行工具。可以用来查找任何列表内容、文件、历史命令、 本机绑定的host、 进程、Git 分支、进程等。所有的命令行工具可以生成列表输出的都可以再通过管道 pipe 到 fzf 上进行搜索和查找。

 

二、软件的安装

  简要介绍如下,conda详细安装、使用见上篇文章Linux下conda的安装与使用

1. conda安装软件

1、# 激活conda,进入base环境
      conda/source activate
2、#切换进入要安装的work环境
      conda activate work
3、#使用conda安装软件
      mamba install bat exa fzf
4、# 软件使用
      which bat exa fzf
      {abs_path}/bat 
      {abs_path}/exa 
      {abs_path}/fzf

2. 添加到bashrc

vim ~/.bashrc
## change command to alias
alias cat="*/Software/Miniconda/envs/test/bin/bat"
alias less="*/Software/Miniconda/envs/test/bin/bat"
alias ls="*/Software/Miniconda/envs/test/bin/exa"
## fzf的添加比较复杂,具体情况下面 《3.2 软件使用-fzf》的详细介绍

三、软件的使用

1. exa

参考文档中的某位博主将主要参数解释如下:
(1)显示配置

  • -1, –oneline:每行显示一个条目
  • -G, –grid:将条目显示为网格(默认)
  • -l, –long:显示扩展的详细信息和属性
  • -R, –recurse:递归到目录
  • -T, –tree: 作为树递归到目录
  • -x, –across:对网格进行横向排序,而不是向下排序
  • -F, –classify:按文件名显示类型指示符
  • –colo[u]r: 何时使用终端颜色
  • –colo[u]r-scale: 突出显示文件大小的级别
  • –icons:显示图标
  • –no-icons:不显示图标(总是覆盖 –icons)

(2)筛选配置

  • -a, –all: 显示隐藏文件和“点”文件
  • -d, –list-dirs:像普通文件一样列出目录
  • -L, –level=(depth):限制递归的深度
  • -r, –reverse:反转排序顺序
  • -s, –sort=(field):按哪个字段排序
  • –group-directories-first:在其他文件之前列出目录
  • -D, –only-dirs: 只列出目录
  • –git-ignore:忽略 .gitignore 中提到的文件
  • -I, –ignore-glob=(globs):要忽略的文件的 glob 模式(管道分隔)

(3)与-l搭配的可选参数

  • -b, –binary: 列出带有二进制前缀的文件大小
  • -B, –bytes:以字节为单位列出文件大小,不带任何前缀
  • -g, –group:列出每个文件的组
  • -h, –header:为每一列添加一个标题行
  • -H, –links:列出每个文件的硬链接数
  • -i, –inode:列出每个文件的inode号
  • -m, –modified:使用修改后的时间戳字段
  • -S, –blocks:列出每个文件的文件系统块数
  • -t, –time=(field):使用哪个时间戳字段
  • -u, –accessed:使用访问的时间戳字段
  • -U, –created:使用创建的时间戳字段
  • -@, –extended:列出每个文件的扩展属性和大小
  • –changed:使用更改的时间戳字段
  • –git:列出每个文件的 Git 状态,如果被跟踪或忽略
  • –time-style:如何格式化时间戳
  • –no-permissions:禁止权限字段
  • –octal-permissions:以八进制格式列出每个文件的权限
  • –no-filesize: 禁止文件大小字段
  • –no-user:禁止用户字段
  • –no-time:抑制时间字段
## exa -hlg -s=time -r 参数约等于 ls -lhtA(本人常用)
## 给常用参数设置快捷键,方便后续使用,参数含义:列出目录下文件及文件夹-l,显示列信息-h,显示文件属组信息-g,按时间排序-s=time,反向排序-r; 
    alias ll='exa -hlg -s=time -r'  
# 1、显示文件夹下的所有文件,包含隐藏文件;
   ll -a /dir/
# 2、递归显示目录及其包含的子目录的内容;
   ll  -R /dir/
# 3、树状递归显示目录及其包含的子目录的内容;
   ll -T /dir/
# 4、网上推荐的学习命令,显示了其他信息,比如索引节点、文件/目录大小、块、用户和组等等。
   exa -abghHliS /dir/
# 5、展示目录下的二级目录结构
   exa -hlg -s=time -r -D -T -L 2 /dir/

 

2. fzf

  fzf 最常用的快捷键应该就是 Ctrl + r 和 Ctrl + t 了。Ctrl-r 用来在历史中搜索,Ctrl-t 用来搜索当前文件夹下的内容。

  fzf 默认会以“extened-search"模式启动, 这种模式下你可以输入多个以空格分隔的搜索关键词, 如^music .mp3$, sbtrkt !fire.

TokenMatch typeDescription
sbtrktfuzzy-match匹配sbtrkt
^musicprefix-exact-match以music开头
.mp3$suffix-exact-match以.mp3结尾
'wildexact-match(quoted)精确包含wild
!fireinverse-exact-match不包含fire
!.mp3$inverse-suffix-exact-match不以.mp3结尾

常用使用功能如下:

# https://github.com/junegunn/fzf/wiki/Examples 以下使用均来自官网示例,参考文件也多是官网示例的翻译;
# 1、基础使用, 筛选当前路径下所有的文件,回车返回选择的文件;
    fzf
    fzf --preview 'cat {}' # 预览当前路径下文件
    
# 2、fzf把全屏显示变为指定高度40%;
export FZF_DEFAULT_OPTS='--height 40% --reverse --border' 

# 3、定义函数fd
# 在bashrc中定义函数fd, 作用:筛选当前目录下的所有文件夹, 回车就能直接到该目录下;目录结构越复杂,效果越明显;
fd() {
  local dir
  dir=$(find ${1:-.} -path '*/\.*' -prune \
				  -o -type d -print 2> /dev/null | fzf +m) &&
  cd "$dir"
}

# 4、定义函数fe
# 在bashrc中定义函数fe, 作用:筛选当前目录下的所有文件,回车直接vim打开所选文件;
fe() {
  IFS=$'\n' out=("$(fzf --preview 'cat {}' --query="$1" --exit-0 --expect=ctrl-o,ctrl-e)")
  key=$(head -1 <<< "$out")
  file=$(head -2 <<< "$out" | tail -1)
  if [ -n "$file" ]; then
    [ "$key" = ctrl-o ] && open "$file" || ${EDITOR:-vim} "$file"
  fi
}

# 5、定义函数fh
# 在bashrc中定义函数fh, 作用:近似等于ctrl+r,从历史命令中搜索想要重新执行的命令,回车返回选择的命令行;
# fh - repeat history
fh() {
  echo $( ([ -n "$ZSH_NAME" ] && fc -l 1 || history) | fzf +s --tac | sed -E 's/ *[0-9]*\*? *//' | sed -E 's/\\/\\\\/g')
}

# 因函数已加入到bashr,在命令行下,输入fzf、fd、fe、fh即可实现各自功能;

其他时候也可以临时搭配使用(几乎不使用):

#1、更改fzf的默认设置,全屏展示变为定制高度40%,预览光标所在文件的内容,回车返回选择的文件;
export FZF_DEFAULT_OPTS="--height 40% --layout=reverse --preview '(highlight -O ansi {} || cat {}) 2> /dev/null | head -500'"
# 2、搜索ps、history的历史记录;
ps -ef | fzf
history | fzf

 

3. bat

# 1、正常使用,打开一个或多个文件,输入“/”可触发搜索功能, "q"退出;
   bat file1 file2
# 2、输出文件指定行,左闭右闭;
   bat -r 10:15 qdel_v2.py
# 3、查看bat支持展示的165中语言及其对应的文件格式;
   bat -L
# 4、可以跟用管道符跟ls等命令连在一起;
   ls -l | bat
# 5、bat的结果均带行数信息,此时可以借用sed打印不带行数
   sed -n '10,15p' file

 

四、参考文档

软件官网

  1. cat命令
  2. bat软件
  3. exa软件
  4. fzf软件

2. 有关博客

  1. linux/unix 上那些炫酷的命令行工具(一)
  2. Bat – A Cat Clone with Syntax Highlighting and Git Integration
  3. linux exa命令比ls更好的展示文件体验
    exa-gitub
  4. 没想到exa命令真的这么好用,直接把ls替代了
    fzf-github
  5. 用fzf神器打造可快速查询并修改使用的Linux命令行历史记录
<think>好的,我现在需要在CentOS上安装htop、tmux、batexa这四个工具。首先,我得确认CentOS的版本,因为不同版本的包管理可能不一样。用户没有提到具体版本,但CentOS 7和8的安装方法可能不同,尤其是CentOS 8之后用了dnf,而7还是用yum。不过,先假设用户用的是较新的版本,比如CentOS 8或者基于RHEL的衍生版。 然后,这四个软件中,htop和tmux应该是比较常见的,可能在默认仓库里就有。但batexa可能不在默认仓库里,需要额外的源,比如EPEL(Extra Packages for Enterprise Linux)。EPEL是常用的第三方仓库,提供很多额外的软件包。所以首先需要安装EPEL仓库。 步骤大概是这样的:先更新系统包缓存,安装EPEL,然后通过yum或dnf安装这些软件。对于CentOS 8及以上,应该用dnf命令,而CentOS 7用yum。但用户的问题里没有说明版本,可能需要分情况讨论,但可能用户希望得到适用于较新版本的答案,或者通用的方法。 检查每个软件的情况: - htop:在EPEL仓库中有提供,所以安装EPEL后可用。 - tmux:通常默认仓库就有,可能不需要EPEL。 - bat:可能需要从EPEL或者其他第三方源安装。比如在EPEL中是否有bat?可能需要查证。或者bat在CentOS的默认仓库里可能叫bat,或者需要其他方式安装,比如用Rust的cargo安装,但这样比较复杂。可能用户需要启用其他仓库,比如fedora的copr仓库? - exa:同样,exa是用Rust写的,可能不在默认仓库或EPEL中,可能需要手动下载rpm包或者通过其他方式安装。 这时候可能需要参考引用中的内容。在用户提供的引用里,引用[1]提到安装这些软件的命令是sudo apt-get install htop tldr tmux tree bat exa dua-cli feh,但这是在基于Debian的系统上用apt,而CentOS用的是yum/dnf,所以不能直接套用。引用[2]中提到安装EPEL,然后安装一些工具,包括htop、tmux、exa等,可能说明在AlmaLinux(RHEL系)中可以通过EPEL和默认仓库安装这些工具。所以可能batexa在EPEL中可用? 需要进一步确认。例如,在CentOS 8的EPEL中是否有batexa。可能需要用户先安装EPEL,然后通过dnf install来安装。例如: sudo yum install epel-release sudo yum install htop tmux bat exa 或者用dnf: sudo dnf install epel-release sudo dnf install htop tmux bat exa 但是不确定batexa是否在EPEL中。例如,exa可能不在EPEL里,需要其他方式安装。这时候可能需要其他步骤,比如从源码编译,或者使用第三方仓库。 或者,bat在EPEL中的包名可能不同,或者需要启用其他仓库。例如,有人可能会建议使用copr仓库,比如安装copr仓库中的daftaupe/bat,然后安装bat。对于exa,可能也需要类似的步骤。 但根据引用[2],在AlmaLinux安装exa,可能说明在EPEL或者其他默认仓库中有这个包。所以可能用户需要启用EPEL,然后安装这些软件。或者,可能这些包在较新版本的CentOS中已经可用。 如果用户无法找到这些包,可能需要手动下载rpm或者使用其他方法。例如,bat的GitHub页面可能有rpm包,或者用cargo安装,但这可能比较复杂,不适合系统管理。 综上,可能的步骤是: 1. 安装EPEL仓库 2. 更新仓库缓存 3. 安装htop、tmux、batexa 然后可能需要确认每个包是否在仓库中存在。例如,用dnf search来查找是否存在: dnf search htop dnf search tmux dnf search bat dnf search exa 如果batexa不在仓库里,可能需要其他方法。比如,exa可能被重命名为eza,因为exa的开发已经停止,转向eza?或者需要从其他来源安装。 但根据引用[2]中的描述,用户提到的安装命令包括exa,所以可能在他们的仓库中存在。所以可能步骤是: 安装EPEL,然后安装这些软件。但需要确认batexa是否在EPEL中。例如,在EPEL的包列表里查找: 对于CentOS 8,EPEL中的包列表可能包括htop、tmux,但可能没有batexa。这时候可能需要其他方式。 例如,bat可能需要从Fedora的copr仓库安装。比如,可以启用copr仓库: sudo dnf copr enable varlad/helix sudo dnf install bat 或者类似的。但需要确保仓库适用于CentOS的版本。 或者,使用第三方仓库,比如RPM Fusion。 或者,手动下载rpm包安装。 但这样的步骤可能比较复杂,用户可能希望更简单的方法。 或者,可能batexa在EPEL中确实存在,但名字不同。例如,bat可能被称为batbat-extras。 或者,可能用户需要安装其他工具,比如从GitHub下载预编译的二进制文件,然后放到PATH中。 例如,对于exa,可能需要从GitHub下载,解压后放到/usr/local/bin。类似地,bat也是如此。 但这样需要用户手动处理依赖和更新,可能不太方便。 所以,可能的回答是: 对于CentOS,首先启用EPEL仓库,然后安装htop和tmux,这两个通常在EPEL或默认仓库中。而batexa可能需要其他步骤,比如从第三方仓库安装或手动安装。 或者,可能bat在EPEL中可用,但需要确认。比如,检查EPEL的包列表: 在EPEL的Packages列表中搜索bat,发现bat包是否存在。例如,访问https://epel.org/查看,或者运行dnf search bat。 例如,在CentOS 8中,安装EPEL后,运行: dnf search bat 如果找到bat,则可以直接安装。否则可能需要其他方法。 例如,如果bat不在EPEL中,可能需要从其他来源安装。例如,使用cargo安装: 但需要安装Rust工具链: sudo dnf install cargo cargo install bat 但这样可能比较麻烦,而且需要用户有权限。 或者,下载预编译的二进制文件,解压后放到/usr/local/bin: 例如,从GitHub的sharkdp/bat的release页面下载rpm包: wget https://github.com/sharkdp/bat/releases/download/v0.24.0/bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz tar xvf bat-*.tar.gz sudo cp bat-*/bat /usr/local/bin 同样适用于exa: 从https://github.com/ogham/exa/releases下载exa的二进制文件,解压后复制到PATH中。 但这样可能需要用户手动处理依赖关系,比如动态链接库等。 综上,可能的正确步骤是: 1. 安装EPEL仓库: sudo yum install epel-release 或者对于CentOS 8及更高版本: sudo dnf install epel-release 2. 更新仓库: sudo yum update 或者: sudo dnf update 3. 安装htop和tmux: sudo yum install htop tmux 或者: sudo dnf install htop tmux 4. 安装batexa: 由于可能不在默认仓库或EPEL中,需要其他方法: 对于bat: 从GitHub下载rpm包: 例如,访问https://github.com/sharkdp/bat/releases,找到适合CentOS的rpm包,或者使用alien转换deb包,但可能复杂。 或者,使用第三方仓库,比如copr: sudo dnf copr enable atim/bat -y sudo dnf install bat 如果这个copr仓库支持CentOS的版本,那么可以这样安装。 对于exa: 同样,可能需要第三方仓库或者手动安装。例如,exa的替代品是eza,但用户要求的是exa。可能需要手动下载二进制文件,或者使用cargo安装: sudo dnf install cargo cargo install exa 然后,将~/.cargo/bin添加到PATH中,或者复制到/usr/local/bin。 但这样可能涉及更多步骤,用户可能希望更简单的解决方案。 回到用户提供的引用,引用[2]中提到在AlmaLinux安装这些工具,可能说明在RHEL系中可以通过特定配置安装。例如,安装EPEL后,可能exabat可用。或者用户需要启用其他仓库。 例如,在引用[2]中提到的安装命令包括: 安装一些必备工具 (sysin) vim, wget, net-tools, bind-utils, htop, lrzsz, lnav, nc, lsof, tree, ncdu, dstat, fd, rg, screen, tmux, duf, procs, exa, expect 这里exa被列在其中,可能说明在配置了适当仓库的系统上,exa可以通过yum/dnf安装。可能用户需要启用某个特定的仓库。 可能sysin的仓库中包含了这些工具。但普通用户可能没有配置这个仓库,所以需要说明如何启用。 但用户的问题是关于CentOS,而引用[2]提到的是AlmaLinux的配置,可能sysin的仓库适用于AlmaLinux,而CentOS可能需要不同的步骤。或者这些软件在EPEL中可用。 此时可能需要进一步确认,但在缺乏具体信息的情况下,可能需要给出一个通用的方法,即安装EPEL后尝试安装,如果找不到包,则提供替代方法。 因此,可能的回答是: 在CentOS上安装这些工具的步骤如下: 1. 启用EPEL仓库: sudo yum install epel-release 或对于CentOS 8+: sudo dnf install epel-release 2. 更新仓库缓存: sudo yum update 或: sudo dnf update 3. 安装htop和tmux: sudo yum install htop tmux 或: sudo dnf install htop tmux 4. 安装batexa: 对于bat,可能需要从第三方仓库安装。例如,使用copr: sudo dnf copr enable atim/bat sudo dnf install bat 对于exa,可能需要手动下载预编译的二进制文件,或使用cargo安装安装Rust工具链: sudo dnf install cargo 然后安装exa: cargo install exa 然后将安装路径添加到PATH环境变量,例如: export PATH=$PATH:~/.cargo/bin 或者在/etc/profile中永久添加。 或者,从GitHub下载exa的二进制文件,解压后复制到/usr/local/bin。 但这样步骤较多,用户可能需要更简洁的解决方案。如果batexa在EPEL中确实不可用,可能需要这些额外步骤。 另外,可能需要安装额外的依赖项,比如exa需要libgit2等。 综上,回答应该给出安装EPEL后的步骤,对于batexa,如果无法通过仓库安装,则提供替代方法。或者,根据引用中的信息,假设在EPEL中可用,直接安装。但需要验证。 例如,在CentOS 8的EPEL仓库中,运行: dnf search bat exa 如果找到对应的包,则可以直接安装。否则需要其他方法。 但根据实际测试,例如在CentOS 8中,安装EPEL后,可能batexa并不在默认仓库中。例如,在CentOS 8的EPEL中,可能没有batexa的包。因此,可能需要其他步骤。 因此,正确的回答应该是: 首先安装EPEL,然后安装htop和tmux,这两个在仓库中存在。对于batexa,需要从其他来源安装,例如下载预编译的二进制文件或使用第三方仓库。 总结步骤: 1. 安装EPEL仓库: sudo dnf install epel-release 2. 更新缓存: sudo dnf update 3. 安装htop和tmux: sudo dnf install htop tmux 4. 安装bat: 下载预编译的二进制: wget https://github.com/sharkdp/bat/releases/download/v0.24.0/bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz tar -xzf bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz sudo cp bat-v0.24.0-x86_64-unknown-linux-gnu/bat /usr/local/bin/ 或者使用cargo安装: sudo dnf install cargo cargo install bat --locked 5. 安装exa: 同样,下载二进制: wget https://github.com/ogham/exa/releases/download/v0.10.1/exa-linux-x86_64-v0.10.1.zip unzip exa-linux-x86_64-v0.10.1.zip sudo cp exa-linux-x86_64 /usr/local/bin/exa 或者用cargo: cargo install exa 但需要安装依赖项。 但这样可能对普通用户来说太复杂,所以可能需要建议使用第三方仓库,或者指出这些包在默认仓库不可用,需要手动安装。 因此,最终的回答应该是: 在CentOS上安装htop和tmux可以通过EPEL仓库轻松完成,而batexa需要手动安装使用第三方仓库。步骤如下: 1. 安装EPEL仓库并更新: sudo dnf install epel-release sudo dnf update 2. 安装htop和tmux: sudo dnf install htop tmux 3. 安装batexa: 由于这两个工具不在默认仓库或EPEL中,可以下载预编译的二进制文件: 对于bat: wget https://github.com/sharkdp/bat/releases/download/v0.24.0/bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz tar xvf bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz sudo cp bat-v0.24.0-x86_64-unknown-linux-gnu/bat /usr/local/bin/ 对于exa: wget https://github.com/ogham/exa/releases/download/v0.10.1/exa-linux-x86_64-v0.10.1.zip unzip exa-linux-x86_64-v0.10.1.zip sudo mv exa-linux-x86_64 /usr/local/bin/exa sudo chmod +x /usr/local/bin/exa 或者,使用cargo安装(需先安装Rust): sudo dnf install cargo cargo install bat exa 安装完成后,确保将`~/.cargo/bin`添加到PATH环境变量中: echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc source ~/.bashrc 这样,用户就可以使用这四个工具了。 此外,可能还需要安装unzip来解压exa的zip文件: sudo dnf install unzip 综上,回答的结构需要清晰,步骤明确,指出哪些包可以直接安装,哪些需要手动处理,并提供两种方法:下载二进制或使用cargo安装。同时,需要确保命令正确,符合CentOS的包管理习惯。</think>在 CentOS 上安装 `htop`、`tmux`、`bat` 和 `exa` 的步骤如下: --- ### 1. 安装 EPEL 仓库 EPEL(Extra Packages for Enterprise Linux)提供额外的软件包。首先启用 EPEL 仓库: ```bash sudo yum install epel-release # CentOS 7 # 或 sudo dnf install epel-release # CentOS 8+ ``` 更新仓库缓存: ```bash sudo yum update # CentOS 7 # 或 sudo dnf update # CentOS 8+ ``` --- ### 2. 安装 htop 和 tmux `htop` 和 `tmux` 可通过仓库直接安装: ```bash sudo yum install htop tmux # CentOS 7 # 或 sudo dnf install htop tmux # CentOS 8+ ``` --- ### 3. 安装 batexa `bat` 和 `exa` 不在默认仓库或 EPEL 中,需手动安装: #### 方法一:下载预编译二进制文件 **bat**: ```bash wget https://github.com/sharkdp/bat/releases/download/v0.24.0/bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz tar xvf bat-v0.24.0-x86_64-unknown-linux-gnu.tar.gz sudo cp bat-v0.24.0-x86_64-unknown-linux-gnu/bat /usr/local/bin/ ``` **exa**: ```bash wget https://github.com/ogham/exa/releases/download/v0.10.1/exa-linux-x86_64-v0.10.1.zip sudo dnf install unzip # 安装解压工具(若未安装) unzip exa-linux-x86_64-v0.10.1.zip sudo mv exa-linux-x86_64 /usr/local/bin/exa sudo chmod +x /usr/local/bin/exa ``` #### 方法二:通过 Rust 工具链安装 安装 Rust 的包管理器 `cargo`: ```bash sudo dnf install cargo # CentOS 8+ # 或 sudo yum install cargo # CentOS 7(需启用 EPEL) ``` 通过 `cargo` 安装: ```bash cargo install bat exa --locked ``` 将安装路径添加到环境变量: ```bash echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc source ~/.bashrc ``` --- ### 验证安装 ```bash htop --version tmux -V bat --version exa --version ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值