Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash Plink SSH ls命令列出文件名&;属性沿列转换为CSV_Bash_Batch File_Unix_Ls_Plink - Fatal编程技术网

Bash Plink SSH ls命令列出文件名&;属性沿列转换为CSV

Bash Plink SSH ls命令列出文件名&;属性沿列转换为CSV,bash,batch-file,unix,ls,plink,Bash,Batch File,Unix,Ls,Plink,如何将(ls)批处理脚本plink SSH批处理脚本从unix服务器沿目录检索特定模式文件(*.txt)的文件名、修改日期和文件大小,并将其写入csv文件。plink SSH ls命令沿列列出文件名和属性,并将其写入csv(每行具有特定的文件数据)虽然源代码是unix服务器更新1:,因为--全职似乎很特殊,这里有一个没有它的修改版本 更新2:要指定路径,请在扩展名前面加上前缀,例如ls-l/tmp/*.txt以列出标准临时目录中的文本文件 plink USER@HOST "ls -l PATH/

如何将(ls)批处理脚本plink SSH批处理脚本从unix服务器沿目录检索特定模式文件(*.txt)的文件名、修改日期和文件大小,并将其写入csv文件。plink SSH ls命令沿列列出文件名和属性,并将其写入csv(每行具有特定的文件数据)虽然源代码是unix服务器

更新1:,因为
--全职
似乎很特殊,这里有一个没有它的修改版本

更新2:要指定路径,请在扩展名前面加上前缀,例如
ls-l/tmp/*.txt
以列出标准临时目录中的文本文件

plink USER@HOST "ls -l PATH/*.txt | grep -v total | awk '{print $9\",\"$6\" \"$7\" \"$8\",\"$5'}" > list.csv
这会将类似的内容输出到
list.csv

history.txt,Apr 10 14:25,216843
instantclient_12_1.txt,Jan 17 2017,4096
ssl.txt,Jul 28 13:00,4096

它给我一个错误,如:ls:invalize option--全职用法:ls-1raadcxmnlhogturtuvcpfbqisfhlee@[files]。看起来全职在批处理脚本usuallyOK中不起作用,我已经更新了答案,使其在不使用
--全职
…的情况下工作。我发现它甚至显示了windows server当前目录下运行批处理脚本的隐藏文件。如何避免这种情况?是否有方法将目录更改为特定路径,并仅对该特定目录执行ls(如上所述),您只需要在扩展名前面加上所需的路径。更新了答案,明确地包含了这一点。如何修改下面的命令,以便将当前目录和以秒为单位的日期/时间输入到csv:echo Y | plink-v-ssh中USER@HOST-v-ssh“cd/local/home/deeef&&ls-p-lh*.bdat | awk'{print$9\”、\“$6\”、\“$7\”、\“$8\”、\“$5\”>>list.csv&退出%errorlevel%如何将上述提供的带有日期/时间(以秒为单位)的命令沿当前目录输入上述列表。csv如何将每个文件名对应的当前目录(以及)显示到csv中?