【问题标题】:How to make the linux/macOS command " .ls >> files.txt " run at php using exec()?如何使用 exec() 使 linux/macOS 命令“.ls >> files.txt”在 php 上运行?
【发布时间】:2011-07-18 01:24:33
【问题描述】:

我只想列出所有文件和子目录并将此列表存储在文件中... 在 MS-DOS、Linux 和 MAC OS 中,命令行 -- .ls( 或 .dir) >> files.txt -- 会给我我想要的... 但是,如何让 php 脚本运行呢?

如果我使用(在 php 上)

exec ('ls >> files.txt');

我会收到这样的错误: 警告:输入中的意外字符:'' (ASCII=28) state=0 in /Applications/XAMPP/xamppfiles/htdocs/DjUtilities/makeLabels.php 第 29 行

...

拜托,有什么想法吗???

它的用途是为CD中的音乐设置标签,这里,按目录划分... 我想获取任何 cd(子目录)并列出文件(曲目)以使用曲目列表制作标签....

所以,最初的想法是用这些数据创建一个文件,然后处理数据以制作标签......任何更好的方法都将非常受欢迎!

【问题讨论】:

    标签: php file exec ls


    【解决方案1】:

    您可以使用 'opendir' 和 'readdir' 来执行此操作,这两个都是原生 php 命令...

    【讨论】:

      【解决方案2】:

      这不取决于您的 'exec(...)' 代码。相同的代码在我的环境中运行良好。

      <?php
      exec('ls >> filelist.txt');
      ?>
      

      这是结果。

      $ cat filelist.txt 
      a.html
      a.out
      ...(omitted)
      

      所以,看起来你的 php 文件在第 29 行可能有一些奇怪的语法/字符。(比如反斜杠的错误使用)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-18
        • 1970-01-01
        • 1970-01-01
        • 2023-03-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-11
        相关资源
        最近更新 更多