Аргументы утилиты передаются как список строк, а не как одна строка. Поэтому утилита не имеет понятия разделителя между аргументами. Аргументы - это просто отдельные элементы списка, между ними ничего нет.
Сущность, которая разделяет строку на список аргументов, - это оболочка. Оболочка выполняет командную строку типа /bin/kill $(echo "75341 75342")
, выполняя серию расширений. В частности:
/bin/kill
и подстановка команды $(echo "75341 75342")
, которая сама строится из оператора $(...)
и токенов echo
и 75341 75342
. echo
и единственным аргументом 75341 75342
. (Кавычки являются частью синтаксиса оболочки, они разграничивают строку, которая становится аргументом команды)75341 75342
, где 
- символ новой строки. Оболочка возьмет этот вывод и удалит последние новые строки, получив строку 75341 75342
. IFS
. По умолчанию IFS
содержит символы пробела, табуляции и новой строки, поэтому строка разбивается на любую последовательность этих символов: она становится списком из двух строк 75341
и 75342
. Расширение имени файла здесь ничего не меняет. /bin/kill
, 75341
и 75342
. Это выполняется как команда /bin/kill
с двумя аргументами 75341
и 75342
. С командой /bin/kill $(echo -e "75577\n75578")
, расширения практически те же. Шаг 3 дает результат 7534175342
. На шаге 4 разбиение слов на части дает тот же список 75341
, 75342
, что и раньше, поскольку новая строка и пробел являются одинаково допустимыми разделителями слов. Таким образом, шаг 5 выполняет точно такую же команду.
Как видите, шаг, определяющий, что разделяет аргументы, - это шаг разделения слов, выполняемый оболочкой. Вы можете поэкспериментировать с этим шагом, изменив значение IFS
. Например, это снова приводит к той же команде:
IFS=+
/bin/kill $(echo "75341+75342")
strace
показывает мне, что ls -i
вызывает lstat()
для каждого имени файла
Это объясняет дополнительную работу.
Учитывая, что readdir ()уже вернул номер инода, это кажется менее -оптимальным
Хотя это похоже на ошибку, такое поведение связано с согласованностью точек монтирования. (см. комментарий Томаса)