如何printf像表格一样对齐我的输出?

Title Author

BaokyBook Baoky2

Use basename commandUse basename command .. Baoky

我的部分代码是这样的

titlelength=${#title};

首先我获得标题长度,然后我就像这样打印

titlespace=`expr 60 - titlelength`;

printf "%s %${titlespace}s\n" "$title" "$author"

但是对齐是不对的,我如何使其良好对齐

在回答以下答案:

在做出改变之后

我所有的左边都对齐了.它似乎不起作用.

解决方法:

最简单的方法是在固定宽度上打印标题:

printf "%30s %s\n" "$title" "$author"

如果要确定最大宽度,则需要在执行任何输出之前读取所有数据.或者你可以简单地将输出传递给列-t.或者,将标题截断为所选宽度(这种截断字符串的技术是一种基础):

printf "%30s %s\n" "${title:0:30}" "$author"

标签:shell,linux,sh

来源: https://codeday.me/bug/20190626/1289463.html

linux中shell自动对齐代码,linux – Shell编程 – 如何printf像表一样对齐我的输出?...相关推荐

  1. Linux中安装和使用Translate Shell

    Translate Shell 是一个支持 Google Translate.Bing Translator.Yandex.Translate 和 Apertium 翻译引擎的命令行翻译器,默认使用的 ...

  2. Linux中 vim 实现代码补全

    Linux中 vim 实现代码补全 vim 中代码补全 步骤1:判断 步骤2:安装 `OmniCppComplete` 步骤3: 步骤4:些许其他操作 结果 利用 Tab 键进行补全 vim 中代码补 ...

  3. 如何在Linux中写C代码

    前提条件:所安装的 Linux 安装有vi/vim 以及 gcc 安装方法: ubuntun系列: Ubuntu 下安装 gcc 教程_Wonz-CSDN博客_如何在ubuntu上安装gcc Redh ...

  4. 在linux中的sort命令,linux中sort命令

    功能说明:将文本文件内容加以排序,sort可针对文本文件的内容,以行为单位来排序. 参 数: -b 忽略每行前面开始出的空格字符. -c 检查文件是否已经按照顺序排序. -d 排序时,处理英文字母.数 ...

  5. linux中用户组和用户,linux中用户和用户组

    一.用户和组原理 一个用户可以属于多个组,一个组有多个用户 在Linux中操作系统必须依赖组和用户进行管理 二.与用户和组相关的配置文件 1.组相关配置文件 1)/etc/group :管理用户组信息 ...

  6. linux中文件链接,关于Linux中文件,链接的一些思考

    在Unix系统中,操作系统为磁盘上的文本与图像,鼠标键盘操作,网络交互等IO操作设计了一组通用API. 使他们被处理的时候可统一用字节流的方式.所以说,除了进程之外,其他的一切均可看做文件. Linu ...

  7. linux中make命令大全,Linux中的命令 make -f 是什么意思

    二.Makefile的文件名 默认的情况下,make命令会在当前目录下按顺序找寻文件名为"GNUmakefile"."makef ile"."Make ...

  8. linux中original_如何在 Linux 中整理磁盘碎片

    如何在 Linux 中整理磁盘碎片 转载自: 如何在 Linux 中整理磁盘碎片​linux.cn 有一个神话是 linux 的磁盘从来不需要整理碎片.在大多数情况下这是真的,大多数因为是使用的是优秀 ...

  9. 网页修改linux命令行,linux中文本修改操作命令linux网页制作 -电脑资料

    在命令模式下可以使用 vi 提供的各种有关命令对文本进行修改,包括对文本内容的删除.复制.取代和替换等, 1. 文本删除/移动 在编辑文本时 ,经常需要删除一些不需要的文本,我们可以用键将输错或不需要 ...

最新文章

  1. linux centos php5.3 安装curl扩展
  2. 80后天才程序员,Facebook 第一任 CTO,开挂人生到底多变态?
  3. 启动jar包 服务方式
  4. fedora6下安装xmms和qq
  5. Struts1.x系列教程(5):HTML标签库
  6. 触发器 :new和 :old的使用
  7. multiprocessing创建自定义进程类
  8. 笔记-中项案例题-2017年下-收尾管理
  9. 成员变量、局部变量、实例变量、静态变量、类变量、常量
  10. C# 保存byte[]到数据库和读取,把byte[]写进文件文件中
  11. Exp6 信息收集与漏洞扫描
  12. 历史 微信开发者工具_微信开发者工具-微信开发者工具下载 v1.03.2011120官方版--pc6下载站...
  13. QuickTimePlayer 多倍速播放及多倍速后无声音
  14. 如何使用PS更换证件照背景色
  15. 短信工具类——mo信通
  16. SpringBoot 与 Kotlin 完美交融
  17. 在Centos系统下创建与Windows的共享文件夹
  18. 大数据的数据科学与关键技术是什么?
  19. Python报错:TypeError: Cannot interpret ‘1‘ as a data type
  20. wf 《计算机专业英语》,武汉4-5岁MFWF轻松自信说英语课程

热门文章

  1. linux CentOS7最小化安装环境静默安装Oracle11GR2数据库(执行安装_07)
  2. linux杀掉80端口线程命令
  3. Android11vivox21刷机包,vivo x21旧版官方固件rom系统刷机包
  4. 利用函数wavread对语音信号进行采样_AI大语音(一)——语音识别基础(深度解析)...
  5. python open函数参数newline_Python open() 函数
  6. 远程服务器 上传公钥,SecureCRT+Ubuntu SSH服务器的远程公钥登陆
  7. psp中java,PSP编程概述
  8. BugkuCTF-WEB题好像需要密码
  9. 计算机上的键有什么功能吗,电脑功能键都有什么用,电脑上功能键的用法_系统圣地...
  10. ogg 查看某条更新_明道云Web 6.1更新:日历视图上线