rclone_lsf命令

376次阅读
没有评论

共计 2652 个字符,预计需要花费 7 分钟才能阅读完成。


版本介绍: 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 被设计为机器可读.

注意lslsl默认是递归的 – 使用--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命令、标志和后端的帮助.
正文完
 
rclone中文站
版权声明:本站原创文章,由 rclone中文站 2023-02-14发表,共计2652字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)