假设终端宽度为80个字符,你可以使用以下命令在终端中居中显示“你好”两个字:

echo -e "\033[6n"; read -sdR CURPOS; CURPOS=${CURPOS#*[}; ROW=${CURPOS%%;*}; COL=${CURPOS#*;}; COL=$((COL - 40)); printf "\033[%s;%sH你好\n" $ROW $COL

解释:

  • echo -e "\033[6n"; read -sdR CURPOS; 用于获取当前光标位置。
  • CURPOS=${CURPOS#*[}; ROW=${CURPOS%%;*}; COL=${CURPOS#*;} 用于从光标位置字符串中提取行列信息。
  • COL=$((COL - 40)) 计算出居中显示“你好”需要向左移动的字符数(假设“你好”两个字共占用5个字符,那么需要向左移动40-5=35个字符)。
  • printf "\033[%s;%sH你好\n" $ROW $COL 用于将光标移动到居中位置,并输出“你好”两个字。

注意:该命令只适用于终端宽度为80个字符的情况,如果你的终端宽度不是80个字符,你需要手动修改计算出来的偏移量

获取Linux终端长度居中显示你好 两个字

原文地址: https://www.cveoy.top/t/topic/g93s 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录