0
GNU bash的內部版本42年3月4日(1)-release使用削減空字符變量
試圖deliminate一個空字符,但慶典似乎並沒有讓空字符變量。
$ echo -e 'hello\0goodbye' > testlist
$ cat testlist | cut -d '' -f1
hello
$ foobar=$(echo -e 'hello\0goodbye'); echo "$foobar" | cut -d '' -f1
hellogoodbye
有什麼我做錯了嗎?
爲什麼你認爲'「」'是空字符? –
@Miati,是的。根據我的經驗,shell不能在變量中保留空字符。其他命令如'find'和'xargs'沒有問題。但是,shell甚至可以將空字符作爲字符串的一部分來處理,如您在此命令行的輸出中所見:'echo -e'A \ 0B'| od -tx1' – Jdamian
@Miati,我猜bash不能在變量中保留空字符,因爲它被用作C中的字符串結束符分隔符。 – Jdamian