Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.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
Linux 如何列出存储库中的文件/目录?_Linux_Bash_Macos - Fatal编程技术网

Linux 如何列出存储库中的文件/目录?

Linux 如何列出存储库中的文件/目录?,linux,bash,macos,Linux,Bash,Macos,我希望通过运行命令来获取存储库下所有文件/目录的名称。是否有类似于wget的命令行工具来执行此操作 例如:存储库url是 我想要一份文件/目录的名字列表 1.0/ 1.1a/ 1.1b/ 1.1c/ 1.1d/ 1.2/ 1.3/ 1.4/ 1.6/ 1.8/ 1.9/ 2.0/ 2.1/ 2.2/ 2.3/ 2.4/binaries/doc/stable/index.txt ruby-1.8.5-p115.tar.bz2 ruby-1.8.5-p115.tar.gz ruby-1.8.5-p1

我希望通过运行命令来获取存储库下所有文件/目录的名称。是否有类似于
wget
的命令行工具来执行此操作

例如:存储库url是

我想要一份文件/目录的名字列表

1.0/
1.1a/
1.1b/
1.1c/
1.1d/
1.2/
1.3/
1.4/
1.6/
1.8/
1.9/
2.0/
2.1/
2.2/
2.3/
2.4/binaries/doc/stable/index.txt
ruby-1.8.5-p115.tar.bz2 ruby-1.8.5-p115.tar.gz ruby-1.8.5-p115.zip
ruby-1.8.6-p114.tar.bz2 ruby-1.8.6-p114.tar.gz ruby-1.8.6-p114.zip
ruby-1.8.6-p383.tar.bz2 ruby-1.8.6-p383.tar.gz ruby-1.8.6-p383.zip
ruby-1.8.6-p388.tar.bz2 ruby-1.8.6-p388.tar.gz ruby-1.8.6-p388.zip
ruby-1.8.6-p398.tar.bz2 ruby-1.8.6-p398.tar.gz ruby-1.8.6-p398.zip
ruby-1.8.6-p399.tar.bz2 ruby-1.8.6-p399.tar.gz ruby-1.8.6-p399.zip
ruby-1.8.6-p420.tar.bz2 ruby-1.8.6-p420.tar.gz ruby-1.8.6-p420.zip
ruby-1.8.7-p174.tar.bz2 ruby-1.8.7-p174.tar.gz ruby-1.8.7-p174.zip
ruby-1.8.7-p248.tar.bz2 ruby-1.8.7-p248.tar.gz ruby-1.8.7-p248.zip
ruby-1.8.7-p249.tar.bz2 ruby-1.8.7-p249.tar.gz ruby-1.8.7-p249.zip


您可以使用
wget
并过滤结果:

wget -O - "https://ruby.taobao.org/mirrors/ruby/" | grep href | cut -d"\"" -f 2 > list.txt
现在
cat list.txt
将给出:

../
1.0/
1.1a/
1.1b/
1.1c/
1.1d/
1.2/
1.3/
1.4/
1.6/
1.8/
1.9/
2.0/
2.1/
2.2/
2.3/
2.4/
binaries/
doc/
stable/
index.html
index.txt
...

您可以使用
wget
并过滤结果:

wget -O - "https://ruby.taobao.org/mirrors/ruby/" | grep href | cut -d"\"" -f 2 > list.txt
现在
cat list.txt
将给出:

../
1.0/
1.1a/
1.1b/
1.1c/
1.1d/
1.2/
1.3/
1.4/
1.6/
1.8/
1.9/
2.0/
2.1/
2.2/
2.3/
2.4/
binaries/
doc/
stable/
index.html
index.txt
...

用正则表达式解析xml/html不是一个好主意。然而,它有助于肮脏和快速使用。请记住,不要将此放在生产代码中

使用正则表达式,您可以做更多的事情。检查HTML代码后,这些行应该适用于您:

curl 'url'|grep -Po '(?<=>)[^<]+'

curl'url'| grep-Po'(?)[^使用正则表达式解析xml/html不是一个好主意。但是它有助于脏的和快速的使用。请记住,不要将此放在生产代码中

使用正则表达式,您可以做更多的工作。检查HTML代码后,这些行应该适合您:

curl 'url'|grep -Po '(?<=>)[^<]+'

curl'url'| grep-Po'(?)[^试试这行:
curl'url'| grep-Po'(?)[^非常感谢Kent,我在设置-Po时总是被告知有关
grep
的用法。我不知道。我无法在终端中访问https,因此我将其放在评论中。如果它起作用,我会将其作为答案移动@jeff试试这一行:
curl'url'| grep-Po'(?)[^非常感谢Kent,我在设置-Po时总是被告知有关
grep
的用法。我对此一无所知。在这里,我无法在终端中访问https,因此我将其放在评论中。如果它有效,我会将其作为答案移动@JeffThreak,非常有效。还有一个问题,如果“href”出现,我如何获取这些字符串属性是绝对url,例如,href=“@杰夫您可以寻找一些方法来获取最后一个字段谢谢,最后我通过sed表达式完成了这项工作。感谢您的帮助。非常感谢,它可以工作。还有一个问题,如果“href”属性是绝对url,我如何获取这些字符串,例如,href=“”@Jeff你可以寻找一些方法来获取最后一个字段谢谢,我终于通过sed表达式完成了。谢谢你的帮助。非常感谢@Kent,我终于解决了这个问题。非常感谢@Kent,我终于解决了这个问题。