KornShell Printf - 填充字符串

2024-01-02

我正在尝试编写一个 KornShell (ksh) 函数,该函数使用 printf 将字符串填充到特定宽度。

例子:

Call

padSpaces Hello 10

Output

'Hello     '

我目前有:

padSpaces(){
        WIDTH=$2
        FORMAT="%-${WIDTH}.${WIDTH}s"
        printf $FORMAT $1
}

Edit:这本身似乎是有效的,但是当我在脚本中分配它时,它似乎失去了除了第一个空格之外的所有内容。

TEXT=`padSpaces "TEST" 10`
TEXT="${TEXT}A"
echo ${TEXT}

Output:

TEST A

我也愿意接受不使用 printf 的建议。我真正想要得到的是一种从 ksh 制作固定宽度文件的方法。


你的功能对我来说效果很好。您的作业不适用于等号周围的空格。它应该是:

SOME_STRING=$(padSpaces TEST 10)

我也冒昧地更换了反引号。

您没有显示如何使用该变量或如何获得所显示的输出。但是,您的问题可能是您需要引用变量。这是一个演示:

$ SOME_STRING=$(padSpaces TEST 10)
$ sq=\'
$ echo $sq$SOME_STRING$sq
'TEST '
$ echo "$sq$SOME_STRING$sq"
'TEST      '
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

KornShell Printf - 填充字符串 的相关文章

  • 尝试将字符串数组中的第一个字符大写,为什么这不起作用?

    我正在尝试编写一个转换的函数 例如list style image to listStyleImage 我想出了一个功能 但它似乎不起作用 有人能指出我这里的问题吗 var myStr list style image function c
  • 如何从脚本编辑 /etc/sudoers?

    我需要编辑 etc sudoers从脚本中添加 删除白名单中的内容 假设我有一个可以处理普通文件的命令 我如何将其应用到 etc sudoers 我可以复制并修改它 然后有visudo用修改后的副本替换原始版本 通过提供我自己的脚本 EDI
  • 将由空格分隔的整数字符串更改为 int 列表[重复]

    这个问题在这里已经有答案了 我该如何做类似的东西 x 1 2 3 45 87 65 6 8 gt gt gt foo x 1 2 3 45 87 65 6 8 我完全陷入困境 如果我按索引执行此操作 那么超过 1 位数字的数字将被分解 请帮
  • 为什么 C#/.NET 字符串带有长度前缀并以 null 结尾?

    看完之后空终止字符串的基本原理是什么 https stackoverflow com questions 4418708 whats the rationale for null terminated strings和一些类似的问题 我发现
  • 从数组中提取值并将其转换为字符串的最佳方法是什么(允许 ES6)?

    我正在尝试采用这样的数组 location Id 000 000 Name Foo Id 000 001 Name Bar etc 提取 Id 并将它们组合成单个字符串 同时在每个值前面附加一个静态字符串 myId 的最有效 最干净的方法是
  • 在Java中执行.lnk文件

    我需要在java中执行 lnk文件 指向exe文件的lnk文件 我能怎么做 在 VB net 中我做 Process Start path 它有效 谢谢你的帮助 Use a 流程构建器 http download oracle com ja
  • 使用脚本检查 git 分支是否领先于另一个分支

    I have branch1 and branch2我想要某种 git branch1 isahead branch2 这将显示如果branch1已承诺branch2没有 也可能指定这些提交 我无法检查差异原因branch2 is在之前br
  • 是否可以在不使用连接器的情况下将 C# 变量包含在字符串变量中?

    NET 3 5 C 是否允许我们在字符串变量中包含变量 而无需使用 连接符 或 string Format 例如 在伪中 我使用 符号来指定变量 DateTime d DateTime Now string s The date is d
  • 在ubuntu中打开spyder

    我想在ubuntu中打开spyder Python IDE 通常我会在 shell 中编写 spyder 它会打开spyder IDE 现在 当我在shell中编写spyder时 它只是换行 什么也没有发生 类似于按 enter 我如何找回
  • 在 Linux 中重新启动时,新创建的文件变为 0 kb(数据被覆盖为空)

    我遇到了一个奇怪的问题 这让我发疯 当前的任务是在 root 用户第一次登录时启动一组文件 并在同一用户第二次登录时启动另一组文件 我决定使用 profile 和 bashrc 文件 并在第一次登录期间发生的任务结束时重新加载 bashrc
  • 计算字符串的所有子串中子序列的出现次数

    我想编写一个算法来计算字符串的所有子字符串中字符子序列 不相交 出现的总数 下面是一个例子 字符串 jabcohnnyjohnny 后续 约翰尼 包含子序列的子字符串 jabcohnny jabcohnnyj jabcohnnyjo jab
  • python 2.7.5 中的 str() 与 repr() 函数[重复]

    这个问题在这里已经有答案了 有什么区别str and repr python 2 7 5 中的函数 python org 上的说明 The str 函数的目的是返回值的表示 这些值是相当的人类可读的 while repr 是为了生成 表示可
  • PHP中用逗号分解复杂字符串

    我需要分割一个包含逗号的字符串 我已经找到了类似字符串的东西 str getcsv A B with a comma eh C 但我的字符串是这样的 例如值没有包含字符 A B one two C 我需要分解它并获得 array 3 0 g
  • 有哪些基于对象的 shell?

    我打算写一个面向对象的shell 基于Python 我已经有很多想法了 但在实现它之前 我想通过一些现有的 shell 来激发我的灵感 我所说的面向对象的基本意思是 参数不仅仅是字符串数组 而且是对象数组 返回值也是一个对象 不仅有 std
  • 在进行 sem_timedwait 时,我将如何应对系统时间的变化?

    假设我有一个使用的程序sem timedwait为了等待 100 毫秒 获取当前时间 添加 100 毫秒 将结果用作abs timeout 参见手册页 http man7 org linux man pages man3 sem wait
  • 查找文本文件中的唯一单词

    我正在用 Java 编写这个程序来查找文本文件中的唯一单词 我想知道这段代码是否正确 因为它甚至将空格显示为单词 String words List
  • 退出代码大于 255 — 可能吗?

    如果是 在哪个操作系统 shell 或其他操作系统上 考虑以下 Java 程序 我使用 Java 只是作为示例 任何语言都适合这个问题 这更多地与操作系统有关 public class ExitCode public static void
  • 正则表达式删除块注释也删除 * 选择器

    我正在尝试使用 bash 从 css 文件中删除所有块注释 我有以下 sed 命令的正则表达式 sed r s w s w d 这可以很好地去除块注释 例如 This is a comment this is another comment
  • Bash 中所有匹配的^单词^替换^?

    为了澄清 我正在寻找一种方法来执行global搜索并替换先前使用的命令 word replacement 似乎只替换了第一场比赛 有没有一些set我无法选择的选项 尝试这个 echo oneone oneone gs one two Rep
  • 安装python启动文件

    我如何安装pythonstartup文件 以便它在命令上运行 例如python myfile py 我尝试将其安装到我的 home myuserUbuntu的目录 但它说我没有足够的权限 此外 不同的地方交替说它应该全部大写或全部小写 前面

随机推荐

  • 约束布局内的滚动视图不会滚动到父约束的底部

    我有一个大约有 12 13 个字段的表单 我用了一个Scrollview在约束布局内 下面是 XML 布局的层次结构 问题是 它不会滚动到底部 而是仅滚动到前 10 个视图 由于视图不再滚动 最后 3 个字段将被隐藏 家长布局
  • 在 HTML 中模拟闪烁的文本光标

    在 HTML 中插入闪烁光标 例如 DOS 中闪烁的粗下划线或 Linux 中的竖线 有什么好方法 该字符 图像将位于 H1 标题后面 并且在不同尺寸下看起来应该不错 你可以这样做CSS 这是vertical bar Fiddle http
  • 在画布上使用 D3 轴功能

    我正在尝试使用 D3 功能在画布上绘制轴 如此处所示https www tutorialsteacher com d3js axes in d3 https www tutorialsteacher com d3js axes in d3
  • Django 分页重复结果

    我在 Django 中遇到了这个奇怪的分页错误 使用object list作为视图的返回 但向其传递 paginate by 参数 它会重复一些结果 否则 如果我删除参数或设置为paginate by None 结果是正确的 如果使用分页
  • Java:如何在重写方法(祖父母方法)中调用 super().super() [重复]

    这个问题在这里已经有答案了 可能的重复 为什么是 super super method Java中不允许 https stackoverflow com questions 586363 why is super super method
  • medoo 中的 LIKE 运算符

    我该如何使用LIKE使用 medoo 框架的 sql 语句中的运算符 原始SQL语句 SELECT id name FROM table WHERE name LIKE foo 梅多声明 data db gt select table id
  • 构建sphinx文档时导入模块失败

    我在用着Sphinx版本1 4 5 我的项目结构如下 src gt main py docs generated with sphinx quickstart 即使在添加路径后src文件夹中docs conf py sys path ins
  • 检测用户何时点击 UIDatePicker 中的选择指示器?

    如何检测用户何时点击 UIDatePicker 中的选择指示器 如果没有这个 用户必须滚动到某个其他日期 然后再次返回以选择当日期选择器向上滑动时在选择指示器下显示的日期 多谢 Stine 更新 这是我自己能想到的唯一解决方案 UIDate
  • 用PHPWord将word文档解析为字符串

    我已经尝试了几种解决方案来将 Word 文档解析为 PHP 中的字符串 但是有时它们在处理某些 Word 文档时会遇到问题 所以我现在正在尝试 PHPWord 尝试将单词文档解析为字符串 我正在 PHPWord 中查看这个示例文件 它读取一
  • python中函数的均方根

    我想计算Python中函数的均方根 我的函数采用简单的形式 例如 y f x x 和 y 是数组 I tried Numpy 和 Scipy 文档 https docs scipy org doc 但什么也没找到 我假设您想要计算以下伪代码
  • 如何将字体真棒图标添加到输入类型文本中[重复]

    这个问题在这里已经有答案了 我尝试将字体很棒的图标转换为文本输入类型 但可以得到想法 但它不起作用 它将如下图所示 search location padding 9px 10px 8px 10px background fff color
  • 如何抑制 Swift 中的特定警告

    我有一个 Swift 函数 执行如下操作 func f gt Int switch WORDSIZE case 32 return 1 case 64 return 2 default return 0 Because WORDSIZE是一
  • System.Convert.ToSingle() 问题,(1.5) 与 (1,5)

    我正在用 C 编写程序来在模型格式之间进行转换 模型格式将数字作为文本 例如 0 136222 我可以使用 System Convert ToSingle 将其转换为浮点数 但在德国 我们使用逗号作为小数点 0 136222 System
  • 使用 PHPUnit 达到 100% 代码覆盖率

    我一直在为一个项目创建测试套件 虽然我意识到获得 100 的覆盖率并不the指标应该努力达到 代码覆盖率报告中有一个奇怪的地方 我想对此进行一些澄清 看截图 因为被测试方法的最后一行是return 最后一行 只是一个右括号 显示为从未执行
  • 如何从Java调用C++?

    我想从 Java 调用 C 方法 我读过有关 JNI 的内容 但我不知道如何获取所有库文件以及应该将其保存在哪里以便从命令行运行程序 有没有办法从 Eclipse 本身调用 C 方法 因为我用它来运行 Java 类 虽然我过去使用过 JNI
  • CSS div 圆角

    我正在尝试执行以下操作 这是我现在所得到的 但它没有正确渲染 有谁知道我该如何解决这个问题 CSS Curved Corners bl background url bl gif 0 100 no repeat background col
  • 在 ImageView 中翻转和更改图像

    我正在开发一个工作简单且工作效率很高的应用程序 但我有一个地方看起来不太好 那就是翻转动画 我想要的是 我有一个 Button 和按钮下方的 ImageView 单击按钮时 我想制作一个动画 看起来 ImageView 已翻转 并且下一个图
  • ruby 中的适配器模式:访问实例变量

    我正在学习适配器模式 https www sitepoint com using and testing the adapter design pattern 在红宝石中的实现 我想访问适配器模块定义中的实例变量 看一下下面的代码 modu
  • Folium 根据值将标记放入标记簇和图层中

    因此 我正在处理商店数据集 每个商店都有其纬度 经度 名称和类别 由于我们谈论的是数百甚至数千家商店 因此我正在使用标记集群 并且它们工作正常 现在 我还需要根据它们的类别将这些商店设置在不同的图层中 这样当我单击 电子商店 时 我只会在地
  • KornShell Printf - 填充字符串

    我正在尝试编写一个 KornShell ksh 函数 该函数使用 printf 将字符串填充到特定宽度 例子 Call padSpaces Hello 10 Output Hello 我目前有 padSpaces WIDTH 2 FORMA