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

2023-12-21

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"

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

 printf "%30s %s\n" "${title:0:30}" "$author"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何 printf 像表格一样对齐我的输出? 的相关文章

  • 如何列出 nginx 中的所有虚拟主机

    有没有一个命令可以列出 CentOS 上 nginx 下运行的所有虚拟主机或服务器 我想将结果通过管道传输到文本文件以用于报告目的 我正在寻找与我用于 Apache 的命令类似的命令 apachectl S 2 gt 1 grep 端口 8
  • PHP exec rm -Rf 不适用于子目录

    我试图删除特定文件夹中的所有内容 但它似乎不会影响子文件夹 但它应该 因为 bash 命令是从控制台执行的 system rm Rf some dir 该命令中不需要星号 如果要与文件一起删除目录 请同时删除斜杠 留下斜杠将删除文件 但保留
  • 在 bash 中,如何除以两个变量并输出四舍五入到小数点后 5 位的答案? [复制]

    这个问题在这里已经有答案了 我将两个变量作为输入 将它们相除后 我希望将输出四舍五入到小数点后 5 位 我已经尝试过这种方法 gt sum 12 n 7 output scale 5 sum n bc echo output 我的代码没有显
  • 在 C# 中编写批处理脚本的好方法是什么?

    我想用 C 编写简单的脚本 我通常会使用 bat 或 4NT btm 文件 复制文件 解析文本 询问用户输入等等 相当简单 但在批处理文件中正确执行这些操作确实很困难 例如没有例外 我熟悉像 AxScript 这样的命令行 脚本 包装器 这
  • #*/ 在 UNIX Shell 脚本中使用

    谁能详细说明 在 UNIX Shell 脚本中的工作原理 我已经看到它在 Korn Shell 中的使用 它专门用于删除文件的扩展名 例如 func write app log o 删除状态文件 CIE STATUS FILE 这里假设文件
  • sed 和 rev shell 命令转换为 Python 脚本 [重复]

    这个问题在这里已经有答案了 有一个shell命令 我正在尝试将逻辑转换为python 但我不知道该怎么办 我需要一些帮助 shell命令是这样的 cd tests src main test ls find name vrlp while
  • 通过 shell 脚本查找“非”硬链接的文件

    给定一个目录 如何找到其中的所有文件 以及任何子目录 not硬链接文件 或者更具体地说 这不是具有多个引用的硬链接文件 基本上我想扫描一个文件夹并返回一个列表unique该目录中的文件 包括目录和符号链接 不是它们的目标 如果可能的话 最好
  • 无法从 bash 脚本使用 nvm

    我正在尝试编写一个 shell 脚本来自动设置我的开发环境 安装 python nvm node mongo 等 我正在使用 nvm 来安装 Node js 它告诉您关闭并重新打开终端以开始使用 nmv 命令 我尝试获取 bashrc 和
  • Python 子进程:无法转义引号

    我知道以前曾问过类似的问题 但它们似乎都是通过重新设计参数的传递方式 即使用列表等 来解决的 但是 我这里有一个问题 因为我没有这个选项 有一个特定的命令行程序 我使用的是 Bash shell 我必须向其传递带引号的字符串 它不能不被引用
  • AJAX 进度条 - 轮询、Comet?

    我想要一些关于如何实施以下内容的建议 我想让我的用户通过 AJAX 了解在我的服务器上运行的任务的进度 我的服务器运行一个 PHP 脚本 该脚本使用 popen 函数通过 shell 命令下载文件 它定期回显 打印正在发生的事情 我想使用
  • 将 apache documentRoot 设置为符号链接(以便于部署)

    我们正在寻找一种将 Apache DocumentRoot 指向符号链接的方法 例如 文档根目录 var www html finalbuild Finalbuild 应该指向 home user build3 之类的文件夹 当我们将新构建
  • shell脚本中是否有互斥/信号量机制?

    我正在 shell 脚本中寻找互斥 信号量 并发机制 考虑以下情况 除非 a 用户不关闭共享文件 否则 b 用户应该无法打开 更新它 我只是想知道如何在 shell 脚本中实现互斥量 信号量 临界区等 在 shell 脚本中实现锁定机制 文
  • 使用 hcitool 扫描低功耗蓝牙?

    当我运行此命令时 BLE 设备扫描仅持续 5 秒 sudo timeout 5s hcitool i hci0 lescan 输出显示在终端屏幕中 但是 当我将输出重定向到文件以保存广告设备的地址时 每次运行该命令时 我都会发现该文件是空的
  • 编写一个 shell 脚本,find-greps 并在 1 行中输出文件名和内容

    要查看所有包含 abc 的 php 文件 我可以使用这个简单的脚本 find name php exec grep l abc 我可以省略 l 并且提取部分内容而不是文件名作为结果 find name php exec grep abc 我
  • 将操作分配给 Automator 中的变量以在 Shell 脚本中使用

    好吧 这件事现在让我发疯 因此 操作 1 选择一个文件夹 我想将该文件夹的路径保存为 var 1 操作 3 选择一个文件 我想将该文件的路径保存为 var 2 所以到底 var 1 Users Prometheus Desktop var
  • 如何按文件大小对查找结果进行排序

    如何按文件大小对 find 命令的结果进行排序 我试图对这个 find 命令的结果进行排序 find src type f print0 我不需要目录的大小 我需要仅按大小排序的文件相对路径 这是如何做的using find command
  • Linux shell 标题大小写

    我正在编写一个 shell 脚本并有一个如下所示的变量 something that is hyphenated 我需要在脚本中的各个点使用它 如下所示 something that is hyphenated somethingthati
  • 如何通过 SSH 启动进程,使其保持运行?

    我有三个文件 Monitor sh 它启动 python 脚本 sudo python webCheck sudo python apiCheck 以及其他的 webCheck 和 apiCheck 它应该在我关闭终端后在后台运行 它无限循
  • bash.sh 运行 cron 的权限被拒绝

    如何在这里使用 bash 脚本运行 cron 我做了如下操作 这里有错误 我想知道如何在 ubuntu 中做到这一点 我现在对它感到震惊 bash sh 文件 bin bash cd var www Controller usr bin p
  • 终止 ssh 会话会终止正在运行的进程

    我正在使用 ssh 连接到我的 ubuntu 服务器 我使用命令启动编码程序 然而 似乎当我的 ssh 会话关闭时 因为我在进入睡眠状态的笔记本电脑上启动它 有没有办法避免这种情况 当然 阻止我的笔记本电脑休眠并不是永久的解决方案 运行你的

随机推荐