2017-06-16 03:12:26 +08:00
|
|
|
---
|
|
|
|
title: "rclone lsjson"
|
2020-05-16 22:11:55 +08:00
|
|
|
description: "List directories and objects in the path in JSON format."
|
2022-12-21 01:16:14 +08:00
|
|
|
versionIntroduced: v1.37
|
2020-02-10 20:31:45 +08:00
|
|
|
# autogenerated - DO NOT EDIT, instead edit the source code in cmd/lsjson/ and as part of making a release run "make commanddocs"
|
2017-06-16 03:12:26 +08:00
|
|
|
---
|
2020-05-22 18:17:37 +08:00
|
|
|
# rclone lsjson
|
2017-06-16 03:12:26 +08:00
|
|
|
|
|
|
|
List directories and objects in the path in JSON format.
|
|
|
|
|
2020-05-22 18:17:37 +08:00
|
|
|
## Synopsis
|
2017-06-16 03:12:26 +08:00
|
|
|
|
|
|
|
List directories and objects in the path in JSON format.
|
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
The output is an array of Items, where each Item looks like this:
|
2017-06-16 03:12:26 +08:00
|
|
|
|
2022-07-10 01:08:20 +08:00
|
|
|
{
|
2017-06-16 03:12:26 +08:00
|
|
|
"Hashes" : {
|
|
|
|
"SHA-1" : "f572d396fae9206628714fb2ce00f72e94f2258f",
|
|
|
|
"MD5" : "b1946ac92492d2347c6235b4d2611184",
|
|
|
|
"DropboxHash" : "ecb65bb98f9d905b70458986c39fcbad7715e5f2fcc3b1f07767d7c83e2438cc"
|
|
|
|
},
|
2018-06-17 01:21:09 +08:00
|
|
|
"ID": "y2djkhiujf83u33",
|
2018-09-01 19:58:00 +08:00
|
|
|
"OrigID": "UYOJVTUW00Q1RzTDA",
|
2019-06-15 19:01:29 +08:00
|
|
|
"IsBucket" : false,
|
2017-06-16 03:12:26 +08:00
|
|
|
"IsDir" : false,
|
2018-06-17 01:21:09 +08:00
|
|
|
"MimeType" : "application/octet-stream",
|
2017-06-16 03:12:26 +08:00
|
|
|
"ModTime" : "2017-05-31T16:15:57.034468261+01:00",
|
|
|
|
"Name" : "file.txt",
|
2018-03-19 18:06:13 +08:00
|
|
|
"Encrypted" : "v0qpsdq8anpci8n929v3uu9338",
|
2019-06-15 19:01:29 +08:00
|
|
|
"EncryptedPath" : "kja9098349023498/v0qpsdq8anpci8n929v3uu9338",
|
2017-06-16 03:12:26 +08:00
|
|
|
"Path" : "full/path/goes/here/file.txt",
|
2019-06-15 19:01:29 +08:00
|
|
|
"Size" : 6,
|
|
|
|
"Tier" : "hot",
|
2022-07-10 01:08:20 +08:00
|
|
|
}
|
2017-06-16 03:12:26 +08:00
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
The exact set of properties included depends on the backend:
|
|
|
|
|
|
|
|
- The property IsBucket will only be included for bucket-based remotes, and only
|
|
|
|
for directories that are buckets. It will always be omitted when value is not true.
|
|
|
|
- Properties Encrypted and EncryptedPath will only be included for encrypted
|
|
|
|
remotes, and (as mentioned below) only if the `--encrypted` option is set.
|
|
|
|
|
|
|
|
Different options may also affect which properties are included:
|
|
|
|
|
|
|
|
- If `--hash` is not specified, the Hashes property will be omitted. The
|
|
|
|
types of hash can be specified with the `--hash-type` parameter (which
|
|
|
|
may be repeated). If `--hash-type` is set then it implies `--hash`.
|
|
|
|
- If `--no-modtime` is specified then ModTime will be blank. This can
|
|
|
|
speed things up on remotes where reading the ModTime takes an extra
|
|
|
|
request (e.g. s3, swift).
|
|
|
|
- If `--no-mimetype` is specified then MimeType will be blank. This can
|
|
|
|
speed things up on remotes where reading the MimeType takes an extra
|
|
|
|
request (e.g. s3, swift).
|
|
|
|
- If `--encrypted` is not specified the Encrypted and EncryptedPath
|
|
|
|
properties will be omitted - even for encrypted remotes.
|
|
|
|
- If `--metadata` is set then an additional Metadata property will be
|
|
|
|
returned. This will have [metadata](/docs/#metadata) in rclone standard format
|
|
|
|
as a JSON object.
|
|
|
|
|
|
|
|
The default is to list directories and files/objects, but this can be changed
|
|
|
|
with the following options:
|
|
|
|
|
|
|
|
- If `--dirs-only` is specified then directories will be returned
|
|
|
|
only, no files/objects.
|
|
|
|
- If `--files-only` is specified then files will be returned only,
|
|
|
|
no directories.
|
|
|
|
|
|
|
|
If `--stat` is set then the the output is not an array of items,
|
|
|
|
but instead a single JSON blob will be returned about the item pointed to.
|
|
|
|
This will return an error if the item isn't found, however on bucket based
|
|
|
|
backends (like s3, gcs, b2, azureblob etc) if the item isn't found it will
|
|
|
|
return an empty directory, as it isn't possible to tell empty directories
|
|
|
|
from missing directories there.
|
2021-11-01 23:42:05 +08:00
|
|
|
|
2018-03-19 18:06:13 +08:00
|
|
|
The Path field will only show folders below the remote path being listed.
|
|
|
|
If "remote:path" contains the file "subfolder/file.txt", the Path for "file.txt"
|
|
|
|
will be "subfolder/file.txt", not "remote:path/subfolder/file.txt".
|
2022-07-10 01:08:20 +08:00
|
|
|
When used without `--recursive` the Path will always be the same as Name.
|
2018-03-19 18:06:13 +08:00
|
|
|
|
2019-02-09 18:42:57 +08:00
|
|
|
The time is in RFC3339 format with up to nanosecond precision. The
|
|
|
|
number of decimal digits in the seconds will depend on the precision
|
|
|
|
that the remote can hold the times, so if times are accurate to the
|
2021-02-02 21:42:35 +08:00
|
|
|
nearest millisecond (e.g. Google Drive) then 3 digits will always be
|
2019-02-09 18:42:57 +08:00
|
|
|
shown ("2017-05-31T16:15:57.034+01:00") whereas if the times are
|
2021-02-02 21:42:35 +08:00
|
|
|
accurate to the nearest second (Dropbox, Box, WebDav, etc.) no digits
|
2019-02-09 18:42:57 +08:00
|
|
|
will be shown ("2017-05-31T16:15:57+01:00").
|
2017-06-16 03:12:26 +08:00
|
|
|
|
|
|
|
The whole output can be processed as a JSON blob, or alternatively it
|
2024-09-08 23:21:56 +08:00
|
|
|
can be processed line by line as each item is written on individual lines
|
|
|
|
(except with `--stat`).
|
2017-06-16 03:12:26 +08:00
|
|
|
|
2019-05-11 06:18:45 +08:00
|
|
|
Any of the filtering options can be applied to this command.
|
2018-03-19 18:06:13 +08:00
|
|
|
|
|
|
|
There are several related list commands
|
|
|
|
|
|
|
|
* `ls` to list size and path of objects only
|
|
|
|
* `lsl` to list modification time, size and path of objects only
|
|
|
|
* `lsd` to list directories only
|
|
|
|
* `lsf` to list objects and directories in easy to parse format
|
|
|
|
* `lsjson` to list objects and directories in JSON format
|
|
|
|
|
2022-03-18 20:29:54 +08:00
|
|
|
`ls`,`lsl`,`lsd` are designed to be human-readable.
|
|
|
|
`lsf` is designed to be human and machine-readable.
|
|
|
|
`lsjson` is designed to be machine-readable.
|
2018-03-19 18:06:13 +08:00
|
|
|
|
2021-02-02 21:42:35 +08:00
|
|
|
Note that `ls` and `lsl` recurse by default - use `--max-depth 1` to stop the recursion.
|
2018-03-19 18:06:13 +08:00
|
|
|
|
2021-02-02 21:42:35 +08:00
|
|
|
The other list commands `lsd`,`lsf`,`lsjson` do not recurse by default - use `-R` to make them recurse.
|
2018-04-28 18:46:27 +08:00
|
|
|
|
2022-10-21 22:06:08 +08:00
|
|
|
Listing a nonexistent directory will produce an error except for
|
2021-02-02 21:42:35 +08:00
|
|
|
remotes which can't have empty directories (e.g. s3, swift, or gcs -
|
2022-03-18 20:29:54 +08:00
|
|
|
the bucket-based remotes).
|
2018-03-19 18:06:13 +08:00
|
|
|
|
2017-06-16 03:12:26 +08:00
|
|
|
|
|
|
|
```
|
|
|
|
rclone lsjson remote:path [flags]
|
|
|
|
```
|
|
|
|
|
2020-05-22 18:17:37 +08:00
|
|
|
## Options
|
2017-06-16 03:12:26 +08:00
|
|
|
|
|
|
|
```
|
2021-11-01 23:42:05 +08:00
|
|
|
--dirs-only Show only directories in the listing
|
2022-07-10 01:08:20 +08:00
|
|
|
--encrypted Show the encrypted names
|
2021-11-01 23:42:05 +08:00
|
|
|
--files-only Show only files in the listing
|
|
|
|
--hash Include hashes in the output (may take longer)
|
|
|
|
--hash-type stringArray Show only this hash type (may be repeated)
|
2020-05-16 22:11:55 +08:00
|
|
|
-h, --help help for lsjson
|
2022-12-21 01:16:14 +08:00
|
|
|
-M, --metadata Add metadata to the listing
|
2021-11-01 23:42:05 +08:00
|
|
|
--no-mimetype Don't read the mime type (can speed things up)
|
|
|
|
--no-modtime Don't read the modification time (can speed things up)
|
|
|
|
--original Show the ID of the underlying Object
|
|
|
|
-R, --recursive Recurse into the listing
|
|
|
|
--stat Just return the info for the pointed to file
|
2017-06-16 03:12:26 +08:00
|
|
|
```
|
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
Options shared with other commands are described next.
|
|
|
|
See the [global flags page](/flags/) for global options not listed here.
|
2023-08-02 17:02:38 +08:00
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
### Filter Options
|
2023-08-02 17:02:38 +08:00
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
Flags for filtering directory listings
|
2023-08-02 17:02:38 +08:00
|
|
|
|
|
|
|
```
|
|
|
|
--delete-excluded Delete files on dest excluded from sync
|
|
|
|
--exclude stringArray Exclude files matching pattern
|
|
|
|
--exclude-from stringArray Read file exclude patterns from file (use - to read from stdin)
|
|
|
|
--exclude-if-present stringArray Exclude directories if filename is present
|
|
|
|
--files-from stringArray Read list of source-file names from file (use - to read from stdin)
|
|
|
|
--files-from-raw stringArray Read list of source-file names from file without any processing of lines (use - to read from stdin)
|
|
|
|
-f, --filter stringArray Add a file filtering rule
|
|
|
|
--filter-from stringArray Read file filtering patterns from a file (use - to read from stdin)
|
|
|
|
--ignore-case Ignore case in filters (case insensitive)
|
|
|
|
--include stringArray Include files matching pattern
|
|
|
|
--include-from stringArray Read file include patterns from file (use - to read from stdin)
|
|
|
|
--max-age Duration Only transfer files younger than this in s or suffix ms|s|m|h|d|w|M|y (default off)
|
|
|
|
--max-depth int If set limits the recursion depth to this (default -1)
|
|
|
|
--max-size SizeSuffix Only transfer files smaller than this in KiB or suffix B|K|M|G|T|P (default off)
|
|
|
|
--metadata-exclude stringArray Exclude metadatas matching pattern
|
|
|
|
--metadata-exclude-from stringArray Read metadata exclude patterns from file (use - to read from stdin)
|
|
|
|
--metadata-filter stringArray Add a metadata filtering rule
|
|
|
|
--metadata-filter-from stringArray Read metadata filtering patterns from a file (use - to read from stdin)
|
|
|
|
--metadata-include stringArray Include metadatas matching pattern
|
|
|
|
--metadata-include-from stringArray Read metadata include patterns from file (use - to read from stdin)
|
|
|
|
--min-age Duration Only transfer files older than this in s or suffix ms|s|m|h|d|w|M|y (default off)
|
|
|
|
--min-size SizeSuffix Only transfer files bigger than this in KiB or suffix B|K|M|G|T|P (default off)
|
|
|
|
```
|
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
### Listing Options
|
2023-08-02 17:02:38 +08:00
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
Flags for listing directories
|
2023-08-02 17:02:38 +08:00
|
|
|
|
|
|
|
```
|
|
|
|
--default-time Time Time to show if modtime is unknown for files and directories (default 2000-01-01T00:00:00Z)
|
|
|
|
--fast-list Use recursive list if available; uses more memory but fewer transactions
|
|
|
|
```
|
|
|
|
|
2024-09-08 23:21:56 +08:00
|
|
|
## See Also
|
2017-06-16 03:12:26 +08:00
|
|
|
|
2018-10-15 18:03:08 +08:00
|
|
|
* [rclone](/commands/rclone/) - Show help for rclone commands, flags and backends.
|
2018-03-19 18:06:13 +08:00
|
|
|
|