file¶
Read the content of a file.
Function Arguments¶
Name |
Type |
Description |
---|---|---|
file_path |
str |
The file path of target file. |
key |
str |
(optional; default: |
split_line |
bool |
(optional; default: |
Description¶
The content of the file is stripped and the empty content is filtered. If the
split_lines
argument is set, then the content will be splitted by line.
The file path is allowed unix style to match multiple files.
Examples¶
Let’s say if the file tree looks like:
/tmp/aaa/x
contains:Hello, Google Hello, ChromiumOS
/tmp/aaa/y
contains:Bye, Everyone
And the probe statement is:
{
"eval": "file:/tmp/aaa/x"
}
Then the probed results will be:
[
{
"file_row": "Hello, Google\nHello, ChromiumOS"
}
]
If the probe statement is
{
"eval": {
"file": {
"file_path": "/tmp/aaa/*",
"split_line": true,
"key": "my_awesome_key"
}
}
}
, then the probed results will be:
[
{
"my_awesome_key": "Hello, Google"
},
{
"my_awesome_key": "Hello, ChromiumOS"
},
{
"my_awesome_key": "Bye, Everyone"
}
]
In above example we use "split_line": true
to let this function treat
each line of the content of a file as different results. And instead of
just specifying a real path, we have /tmp/aaa/*
to match both
/tmp/aaa/x
and /tmp/aaa/y
.