system(some_command)
これは私がPerlから呼び出すときに呼び出されsome_command
ます/bin/sh
。またはsome_command
などの他のシェルで実行したいです。bash
zsh
zsh
コマンドを実行するbash
1つの方法sh
は呼び出すことですzsh -c '<command>'
。アイデアはコマンドをに渡すことですsystem()
。ただし、これには周囲に一重引用符が必要です<command>
。
しかし、<command>
すでに引用符がある場合はどうなりますか?どのように渡しますかzsh -c
?たとえば、
find . -name 'something*.txt'
上記の例は説明のためだけのものです。別の例は、bash
orで呼び出すバイナリに引用符が付いた項目を渡す必要がある場合ですzsh
。
ベストアンサー1
使用system LIST
、シェルを呼び出しません。つまり
system('/bin/bash', '-c', $your_command);
変える
system("/bin/bash -c '$your_command'");