将文件重定向到ls

时间:2015-06-16 22:30:02

标签: file shell redirect ls

是否可以将文件的输出重定向到ls。 示例:文件中包含/,我想将其指向ls以获取/目录的内容。当我尝试ls < file时,这不起作用

3 个答案:

答案 0 :(得分:2)

您需要使用xargs。这个非常有用的实用程序运行一个带有参数的命令,这些参数作为输入传递:

cat myfile | xargs ls

答案 1 :(得分:2)

您可以使用xargs或命令替换来实现此目的。

  1. 使用xargs

    关键是xargs command的知识。

    如果您有一个名为files_to_change的文件中的文件列表,那么 可以使用以下一个衬垫打印它们:

    cat files_to_change | xargs ls
    
  2. 使用命令替换

    另一种方法是使用command substitution。这有效 与上述相同。

    两种不同的单行,使用不同的语法:

    ls `cat files_to_change`
    ls $(cat files_to_change)
    
  3. 它们是文件还是目录无关紧要,你可以对它们运行任何命令。

    如果file_to_change的内容是:

    /usr/bin/
    /bin/
    

    cat files_to_change | xargs lsls $(cat files_to_change)等同于运行:

    $ ls /usr/bin/
    $ ls /bin/
    

    控制台上的输出应该是您想要的。

答案 2 :(得分:0)

ls 'cat your_file'

小心,&#39;是 altGr + 7 char(但在这里用于格式化!)