Söyleyebileceğim:Balık kabuğu - Alt komutun nasıl enterpolasyonu yapılır? Bash olarak
$ echo "a$(echo b)c"
abc
ben fish shell bunu nasıl? Eğer tırnak varsa
Söyleyebileceğim:Balık kabuğu - Alt komutun nasıl enterpolasyonu yapılır? Bash olarak
$ echo "a$(echo b)c"
abc
ben fish shell bunu nasıl? Eğer tırnak varsa
echo a(echo b)c
, bunları çıkmalısınız:
echo "a"(echo b)"c"
senin alt komutu yeni satır olma ihtimali varsa, balık 2.3 itibarıyla, kaydetmek ve geri yüklemek zorunda $ IFS:
set -l IFS
echo "a"(cat ~/file.txt)"c"
set -e IFS
Bu durumda, string
nihayet bu durumu ele alabilecektir.
Bu, bir şekilde tüm yeni satır karakterlerini yutacak ve eşdeğer gibi görünmeyecektir. Minimal örnek: Verilen "echo -e" a \ nb "> x' sonra bash' echo "$ (cat x)" 'doğru olanı yapar, oysa balık ekoyu (cat x) '; bash 'echo $ (cat x)' için tırnak işaretleri olmadan eşdeğer olacaktır. – Debilski
@ridiculous_fish, bash'ın "" $() "sonucunu nasıl üreteceğinizi açıklayabilir misiniz? Balık 2.3.0 ile test edildi ve hala Debilski'nin çıktısını aldım. Şimdiden teşekkürler. – berbt
Yeni satırların nasıl işleneceğini açıklamak için düzenleyin. –
echo a (echo b) c '... bkz http://fishshell.com/docs/current/index.html#expand –