gpt4 book ai didi

linux - CP 错误(与 ls 和 grep 结合使用)- cp : cannot stat

转载 作者:太空狗 更新时间:2023-10-29 12:07:14 29 4
gpt4 key购买 nike

当我对 grep 执行 ls 时,结果正是我所需要的:dll 列表,见下​​文:

$ ls -R | grep "dll$"
boost_chrono-vc90-gd-1_47.dll
boost_chrono-vc90-mt-gd-1_47.dll
boost_chrono-vc90-1_47.dll
boost_chrono-vc90-mt-1_47.dll
boost_date_time-vc90-gd-1_47.dll
boost_date_time-vc90-mt-gd-1_47.dll
boost_date_time-vc90-1_47.dll
boost_date_time-vc90-mt-1_47.dll
boost_filesystem-vc90-gd-1_47.dll
boost_filesystem-vc90-mt-gd-1_47.dll
boost_filesystem-vc90-1_47.dll
...

但是当我尝试将所有这些 dll 复制到目标位置时,比如 ../,我遇到了错误并且没有文件被复制:

$ cp `ls -R | grep "dll$"` ../
cp: cannot stat `boost_chrono-vc90-gd-1_47.dll': No such file or directory
cp: cannot stat `boost_chrono-vc90-mt-gd-1_47.dll': No such file or directory
cp: cannot stat `boost_chrono-vc90-1_47.dll': No such file or directory
cp: cannot stat `boost_chrono-vc90-mt-1_47.dll': No such file or directory
cp: cannot stat `boost_date_time-vc90-gd-1_47.dll': No such file or directory
cp: cannot stat `boost_date_time-vc90-mt-gd-1_47.dll': No such file or directory
cp: cannot stat `boost_date_time-vc90-1_47.dll': No such file or directory
cp: cannot stat `boost_date_time-vc90-mt-1_47.dll': No such file or directory
cp: cannot stat `boost_filesystem-vc90-gd-1_47.dll': No such file or directory
cp: cannot stat `boost_filesystem-vc90-mt-gd-1_47.dll': No such file or directory
...

我之前使用 cygwin 的 boost build 可以做到这一点,但我不知道为什么现在它不适用于 boost build 1-47。

感谢任何输入。

最佳答案

您看到了一个 dll 列表,但您不知道它们位于哪个目录中。目录名称单独打印一次,并通过 grep 过滤掉。

您不能将 ls -R 用于任何有意义的事情。输出格式对脚本太不友好。请改用 find。这个命令

找到 . -name "*.dll"

将打印您的 dll 的完整路径名(无需使用 grep)。这个命令

找到 . -name "*.dll"-exec cp {} ..

会将文件复制到 .. 而不是打印它们的名称。

关于linux - CP 错误(与 ls 和 grep 结合使用)- cp : cannot stat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6814949/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com