shell_execがbash端末とは異なる応答を返すのはなぜですか?

shell_execがbash端末とは異なる応答を返すのはなぜですか?

このコードをPHPで実行します。

shell_exec("cat /proc/mounts | grep \"^/dev\" | grep -v loop");

それは戻ってくる

/dev/sda5 / ext4 rw,relatime,errors=remount-ro 0 0 /dev/sda1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0 /dev/sda5 /tmp ext4 rw,relatime,errors=remount-ro 0 0 /dev/sda5 /var/tmp ext4 rw,relatime,errors=remount-ro 0 0 /dev/sdb1 /work/hd1 ext4 rw,relatime 0 0

ただし、端末で直接実行すると、次の結果が表示されます。

/dev/sda5 / ext4 rw,relatime,errors=remount-ro 0 0
/dev/sda1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 0

私のディスクドライブ/dev/sdb1はマウントされませんでした!

何が起こったのか分からない!私はPHP 7.4とapache2でUbuntu 20.04を実行しています。

ベストアンサー1

おすすめ記事