问题标签 [ifs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
398 浏览

variables - IFS <<< 命令的 UNIX (AIX) 版本

我有一个在 Linux 上完美运行的脚本,但是当试图让它在 UNIX 机器上运行时,有一个命令我似乎一辈子都无法转换,它...

$NextFile 是在前面的代码行中创建的变量,它将包含 4 列,用 | 分隔。

它的 <<< 不受欢迎,但我只是找不到从 UNIX 中读取变量的替代方法。有什么帮助吗?

0 投票
2 回答
52 浏览

bash - 使用 .sh 从外部文件中分离和添加数字

问题 #1

如何使用 .sh 读取列并添加文件中的每个条目?

示例文件:

如何使用IFS=':'.sh 文件逐行读取该文件并添加第三部分,以便输出添加内容,例如 450


0 投票
1 回答
213 浏览

bash - 在 while 循环中使用 read 处理多个变量时遇到问题

仍在学习,我迷失了 IFS=

这是我的第一个脚本,只要上传的文件名中没有空格,它就可以很好地工作。我已经阅读了一些使用 IFS= 'whatever' 来定义字段分隔符的脚本,但我不想在生产时搞乱它;它可以工作,但是当我无法获取上传文件的用户的用户名时,这让我很恼火。请给我一个提示。

0 投票
1 回答
30 浏览

bash - BASH csv 使用 IFS= 解析,其中一些字段包含分隔符,即地址

我正在尝试使用 解析从 MySQL 数据库生成的 csv 文件IFS=,,但某些字段包含,不应被视为分隔符的 a 。

例如,第一行是: "012345678","abcdefgh","Smith, John","1234 Main St. Somewhere, state"

我得到的回报是: "012345678","abcdefgh","Smith","John","1234 Main St. Somewhere","state"

我试图将每个字段分配给一个变量,但脚本被挂在不是实际字段分隔符的逗号上。

0 投票
1 回答
74 浏览

arrays - Bash 多阵列和 IFS

我的 bash 脚本有问题。

我会将一个字符串拆分为一个(索引命名的)数组:

字符串可以有这个值:status=online clients=5 name=Server 字符串也可以有几个命令有这样的(这是有问题的): status=online clients=5 name=Server|status=offline clients=0 name=Server_2

第一个问题:如果这个“|”,我该如何拆分,或者我应该检查一下 存在吗?

第二个问题:我现在必须将这些值拆分为一个命名数组,例如 from string:status=online clients=5 name=Server并且该数组看起来像:

如果分隔符“|” 存在,我必须在 2 个(或更多)数组中得到结果:

例如,echo $mainarray[0][status]我会得到“在线”。

有可能这样做吗?

0 投票
1 回答
93 浏览

linux - IFS 变量是否发生了以下变化?

下面的代码片段是我用来确定文件系统中文件所在位置的路径和文件名的内容。

我的问题是关于线路,

"while IFS= read -r -d $'\0' line; do"

早些时候,我在 find 命令上使用了 for 循环。但是在stackoverflow上有一篇文章说这更好,更正确。我试过了,它有效,但不太明白。此行是否会以任何会改变主外壳的方式更改 IFS?我试图弄清楚,因为我不太精通 SHELL 脚本,我无法理解该行的作用。

我不想在生产系统中部署它,然后发现其他脚本失败,因为 IFS 变量已更改。

0 投票
1 回答
2528 浏览

arrays - bash IFS 将字符串拆分为数组

我有以下行filename:231:blahblah,我想将其拆分为一个数组,:用作分隔符

这是我拥有的代码

实际输出为

我想要的输出是

我究竟做错了什么?

0 投票
3 回答
419 浏览

bash - Bash IFS ('\n'):通过 find 命令和 for 循环检测文件名的问题

命令替换是否正确?该变量不适用于 for 循环中的 IFS \n,我不明白为什么会发生这种情况。

for 循环应该通过逐行处理 find 的输出来处理带有空格的文件名(这就是我使用 IFS \n 的原因)。

0 投票
1 回答
150 浏览

ifs - 嗨,下一行带单引号的 IFS 是什么意思?

IFS=' '是空间,但什么是

0 投票
3 回答
169 浏览

shell - 使用“set ls -AF”设置壳位置参数

我正在编写一个ksh函数(放置在.profile文件中),它将显示一个子目录菜单并允许用户选择要cd进入的一个。这是代码:

除了包含空格字符的目录名之外,此函数运行得相当好。如果目录名称包含空格,则set命令将目录名称的每个空格分隔元素(而不是完整的目录名称)设置为单独的位置参数;这在这里没有用。

我试图将$IFS shell 变量(默认包含空格制表符换行符)设置为单个换行符

这似乎完成了预期的验证:

但是,尽管我尽了最大努力(在几天的工作过程中),但我未能将包含空格的整个目录名称设置为位置参数的值。

我错过了什么?

特此征求并欢迎提出建议。

ADVA谢谢NCE

鲍勃