- A+
版本介绍: v1.40
rclone lsf
在remote:path中列出格式化的目录和对象以供解析.
简介
将源路径的内容(目录和对象)以容易被脚本解析的形式列到标准输出。 默认情况下,这只是对象和目录的名称,每行一个。 目录将有一个/后缀.
Eg
$ rclone lsf swift:bucket
bevajer5jef
canole
diwogej7
ferejej3gux/
fubuwic
使用--format
选项来控制被列出的内容。 默认情况下,这只是路径,但你可以使用这些参数来控制输出:
p - path
s - size
t - modification time
h - hash
i - ID of object
o - Original ID of underlying object
m - MimeType of object if known
e - encrypted name
T - tier of storage if known, e.g. "Hot" or "Cool"
M - Metadata of object in JSON blob format, eg {"key":"value"}
因此,如果你想要路径、大小和修改时间,你可以使用--format "pst"
,或者--format "tsp"
,把路径放在最后。.
Eg
$ rclone lsf --format "tsp" swift:bucket
2016-06-25 18:55:41;60295;bevajer5jef
2016-06-25 18:55:43;90613;canole
2016-06-25 18:55:43;94467;diwogej7
2018-04-26 08:50:45;0;ferejej3gux/
2016-06-25 18:55:40;37600;fubuwic
如果你在格式中指定 "h",你将得到默认的MD5哈希值,使用--hash
标志来改变你想要的哈希值。 注意,如果对象上没有这个类型的哈希值,可以返回一个空字符串(对于目录);如果从对象上读取哈希值有错误,可以返回 "ERROR";如果对象不支持这个哈希值类型,可以返回 "UNSUPPORTED".
例如,要模拟md5sum命令,你可以使用
rclone lsf -R --hash MD5 --format hp --separator " " --files-only .
Eg
$ rclone lsf -R --hash MD5 --format hp --separator " " --files-only swift:bucket
7908e352297f0f530b84a756f188baa3 bevajer5jef
cd65ac234e6fea5925974a51cdd865cc canole
03b5341b4f234b9d984d03ad076bae91 diwogej7
8fd37c3810dd660778137ac3a66cc06d fubuwic
99713e14a4c4ff553acaf1930fad985b gixacuh7ku
(虽然 "rclone md5sum … "是一种更简单的输入方式)。
默认情况下,分隔符是";",这可以用--分隔符
标志来改变。 注意,分隔符在路径中不被转义,所以把它放在最后是一个好的策略。.
Eg
$ rclone lsf --separator "," --format "tshp" swift:bucket
2016-06-25 18:55:41,60295,7908e352297f0f530b84a756f188baa3,bevajer5jef
2016-06-25 18:55:43,90613,cd65ac234e6fea5925974a51cdd865cc,canole
2016-06-25 18:55:43,94467,03b5341b4f234b9d984d03ad076bae91,diwogej7
2018-04-26 08:52:53,0,,ferejej3gux/
2016-06-25 18:55:40,37600,8fd37c3810dd660778137ac3a66cc06d,fubuwic
你可以以CSV标准格式输出。 这将转义""中的内容,如果它们包含 ,
Eg
$ rclone lsf --csv --files-only --format ps remote:path
test.log,22355
test.sh,449
"this file contains a comma, in the file name.txt",6
注意--absolute
参数对制作文件列表很有用,可以通过--files-from-raw
标志传递给rclone拷贝。.
例如,找到一天内修改过的所有文件,只复制这些文件(不需要遍历整个目录结构):
rclone lsf --absolute --files-only --max-age 1d /path/to/local > new_files
rclone copy --files-from-raw new_files /path/to/local remote:path
任何一个过滤选项都可以应用于这个命令.
有几个相关的列表命令
ls
只列出对象的大小和路径
lsl
只列出对象的修改时间、大小和路径
lsd
只列出目录
lsf
以易于解析的格式列出对象和目录
lsjson
以JSON格式列出对象和目录
ls
,lsl
,lsd
被设计为人类可读.
lsf
被设计成人类和机器可读的。.
lsjson
被设计为机器可读.
注意ls
和lsl
默认是递归的 – 使用--max-depth 1
来停止递归。.
其他列表命令lsd
,lsf
,lsjson
默认不递归 – 使用R
使其递归。.
列出一个不存在的目录会产生一个错误,但不能有空目录的远程(例如s3、swift或gcs–基于桶的远程)除外。.
rclone lsf remote:path [flags]
选项
--absolute 在路径名称前加一个领先的/
--csv 以CSV格式输出
-d, --dir-slash 在目录名上添加斜线(默认为true)。
--dirs-only 只列出目录
--files-only 只列出文件
-F, --format string 输出格式--详见帮助(默认为 "p")。
--hash h 当h的格式为MD5|SHA-1|DropboxHash时,使用这个哈希值(默认为 "md5")。
-h, --help 对LSF的帮助
-R, --recursive 递归到列表中
-s, --separator string 格式中项目的分隔符(默认为";")。
关于这里没有列出的全局选项,请参见全局标志页.
另见
rclone – 显示对rclone命令、标志和后端的帮助.
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫