我正在尝试使用Text::CSVPerl 模块来解析制表符分隔的文件。
我试图解析的文件是:
#IGNORE COLUMN1 COLUMN2 COLUMN3 COLUMN4
ROW1 x y z a
ROW2 b c d
ROW3 w
Run Code Online (Sandbox Code Playgroud)
请注意,该文件是制表符分隔的。该文件可能有N列和N行。此外,在 的情况下ROW2,它有第四个选项卡但没有值。ROW3的w值后没有选项卡COLUMN1。即某些列可能有未定义的值或空白值。
到目前为止,我已经开始编写 Perl 脚本,但很早就开始尝试弄清楚如何编写代码来回答以下问题:
找出ROWn有多少。然后每次COLUMNn检查我是否有ROWn值。所以在这种情况下COLUMN2,COLUMN3和COLUMN4会有缺失值。
任何提示和指导都会有所帮助(我是 Perl 的新手)。我查看了 CPAN Text::CSV 页面,但我没能解决这个问题。
#!/usr/bin/perl
use warnings;
use strict;
use v5.12;
use Text::CSV;
my $csv = Text::CSV->new ({
escape_char => '"',
sep_char => '\t',
eol => $\, …Run Code Online (Sandbox Code Playgroud) utility.fetchInfo()返回一个Promise对象。我需要能够获取此Promise对象的值,并将其值分配给一个变量,以便以后在代码中使用。
目前,我可以愉快地将值打印result到控制台,但是我需要能够将此值分配给myVal。到目前为止,我已经尝试了很多方法,但没有任何效果。
var myVal = utility.fetchInfo().then(result => console.log(result));
谢谢
我正在尝试调用 bash 函数并将函数返回的输出分配给变量。但是,当我运行下面的代码时,出现以下错误,并且我不明白我可能做错了什么:
test.sh: return: line 7: Illegal number: aGVsbG93b3JsZA==
helloworld
convertfrombase64 () {
B64DATA=$1
echo "$B64DATA" | base64 -d
return "$B64DATA"
}
PLAINTEXT=$(convertfrombase64 "aGVsbG93b3JsZA==")
echo "$PLAINTEXT"
Run Code Online (Sandbox Code Playgroud) 我有一个$artifact使用Data :: Dumper打印的Perl哈希引用.
输出print Dumper ($artifact);返回以下内容.
$VAR1 = bless( {
'_content' => '{
"results" : [ {
"uri" : "http://localhost:port/myfile.tar"
} ]
}',);
Run Code Online (Sandbox Code Playgroud)
但是,我在尝试专门访问URI的值时遇到问题,即我想检查是否uri有值.
谢谢!
编辑:只是一些背景.我正在使用Artifactory :: Client perl模块中的'artifact_search'方法
我试图在Groovy中生成以下JSON结构,但没有得到我想要的输出。
{
"settings": [
{
"location": "remote",
"stance": "cold"
},
{
"spareParts": {
"id": "123" {
"info": "In stock"
}
}
}
]
}
Run Code Online (Sandbox Code Playgroud)