跳到主要内容

客户端命令行

yshell 是悦库网盘系统的全平台(Windows、MAC、Linux) CLI客户端,它允许您使用命令行方式上传/下载文件,像操作本地文件一样使用命令行对网盘中的文件进行删除、移动、复制、重命名等操作,也可以使用window bat、linux sh、Python、NodeJS等脚本实现对网盘文件自动化管理。

配置系统命令

通过配置ysh命令,可以直接在系统中输入ysh命令进行操作,方便快捷。配置完成后可以查看命令介绍

Windows

兼容win7及以上系统

以管理员身份打开cmd命令行,并按以下步骤运行命令:

  1. 设置服务器地址,在您内网服务端的 客户端下载页面 中复制链接,替换命令中的 {下载链接}

    set "downloadUrl={下载链接}"
  2. 创建yshell目录

    mkdir %appdata%\yshell
  3. 下载ysh.exe到yshell目录

    powershell (new-object Net.WebClient).DownloadFile('%downloadUrl%','%appdata%\yshell\ysh.exe')
  4. 添加系统环境变量,并立即生效

    wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;%appdata%\yshell"
    taskkill /f /im explorer.exe&explorer.exe
  5. 退出当前cmd窗口,打开一个新cmd,测试命令有效性。如果命令不生效请注销Windows系统重新进入。

    ysh --help
  6. 命令配置完成,您可能需要配置用户认证信息,这样才能开始使用命令

Mac

兼容Mac10.15及以上系统。

按以下步骤运行命令:

  1. 设置服务器地址,在您内网服务端的 客户端下载页面 中复制链接,替换命令中的 {下载链接}

    export downloadUrl={下载链接}
  2. 创建yshell目录

    mkdir ~/.yshell
  3. 下载ysh.exe到yshell目录,设置执行权限

    wget --content-disposition -P ~/.yshell/ $downloadUrl
    chmod +x ~/.yshell/ysh
  4. 添加yshell环境变量

    sudo vim ~/.bash_profile

    打开后在文件末尾添加一行:

    export PATH=~/.yshell:$PATH

    保存,关闭。并使环境变量生效。

    source ~/.bash_profile
  5. 测试

    ysh --help
  6. 命令配置完成,您可能需要配置用户认证信息,这样才能开始使用命令

Linux

以下命令行在Ubuntu18系统的x86/arm64架构下验证通过,其他Linux系统方法类似,可自行探索。

按以下步骤运行命令:

  1. 设置服务器地址,在您内网服务端的 客户端下载页面 中复制链接,替换命令中的 {下载链接}

    export downloadUrl={下载链接}
  2. 创建yshell目录

    mkdir ~/.yshell
  3. 下载ysh.exe到yshell目录,设置执行权限

    wget --content-disposition -P ~/.yshell/ $downloadUrl
    chmod +x ~/.yshell/ysh
  4. 添加yshell环境变量

    sudo vim ~/.profile

    打开后在文件末尾添加一行:

    export PATH=~/.yshell:$PATH

    保存,关闭。并使环境变量生效。

    source ~/.profile
  5. 测试

    ysh --help
  6. 命令配置完成,您可能需要配置用户认证信息,这样才能开始使用命令

命令介绍

ysh [--version] [--help] <子命令> [<参数>]

已支持的子命令:
user          配置用户名称和密码并保存到本地
put           上传文件、文件夹
get           下载文件、文件夹
ls              列出指定目录下的文件/文件夹
mkdir       创建文件夹
rm            删除文件、文件夹

使用命令 ysh -h < 子命令名称 > 获取子命令详细帮助信息。

user

用法:ysh user [<参数>]
设置/清理用户认证信息

-u, --url=URL 服务器URL
-a, --account=Account 登录账号
-p, --password=Password 登录密码
-c, --clear 清除本地配置的用户信息和登录凭据

例子:

ysh user -u http://192.168.0.100:2020 -a test -p 666666 #设置用户的认证信息(服务器URL、登录账号、密码)
ysh user -c #清理当前用户认证信息

put

用法:ysh put [<参数>] 本地路径 远程路径
将本地路径中的文件/文件夹上传到指定的远程路径下。

-f, --force 如果远程路径的目标文件已存在则覆盖,默认远程目标文件已存在会失败。

例子:

ysh put e:\test\test.txt /协同空间/资料 #将文件上传到网盘路径下,如果存在则失败。
ysh put -f e:\test\test.txt /协同空间/资料 #将文件上传到网盘路径下,如果存在则覆盖。
ysh put -f e:\test\test.xls /协同空间/资料/abc.xls #将文件上传到网盘路径下,并生成新名称,如果存在则覆盖。

get

用法:ysh get [<参数>] 远程路径 本地路径
将远程路径下的文件/文件夹下载到本地路径

-f, --force 如果本地路径的目标文件已存在则覆盖,默认本地路径的目标文件已存在会失败。

例子:

ysh get /协同空间/资料/abc.xls e:/ #将网盘路径下的文件下载到本地,如果本地已存在则失败。
ysh get -f /协同空间/资料/abc.xls e:/ #将网盘路径下的文件下载到本地,如果本地已存在则覆盖。

ls

用法:ysh ls [<参数>] 路径
列出指定远程路径下的所有文件

例子:

ysh ls /协同空间/资料 #列出网盘路径下的文件/文件夹,暂不支持相对路径。

mkdir

用法:ysh mkdir 路径
创建远程目录

-p, --parents 如果父目录不存在则创建。

例子:

ysh mkdir /协同空间/资料/文档 #创建网盘文件夹,如果父目录不存在则失败。
ysh mkdir -p /协同空间/资料/文档/计算机/编程 #创建网盘文件夹,如果空间/父目录不存在则逐层创建。

rm

用法:ysh rm [<参数>] 路径
删除文件/文件夹

-r, --recursive 递归删除目录及其子目录内的所有内容

例子:

ysh rm /协同空间/资料/abc.xls #删除网盘中的文件,如果是目录则失败。
ysh rm -r /协同空间/资料/文档 #删除文件夹,包括其下载的所有子文件/文件夹。

rename

用法:ysh rename 文件/文件夹路径 新名称
重命名文件/文件夹

例子:

ysh rename /协同空间/资料/abc.xls abc1.xls #重命名文件
ysh rename /协同空间/资料/文档 文档1 #重命名文件夹