Различные результаты для ls при доступе к Ubuntu через SSH от различных клиентов (ШПАКЛЕВКА Windows, Терминал Mac)

Рассмотрите следующую структуру каталогов, распечатанную к экранному использованию ls -l "$dir" ($dir переменная удара, обозначающая некоторую папку на том же сервере, некоторые выравнивают), на удаленном сервере Ubuntu (более точно, Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-116-универсальный x86_64)):

-rw-r--r-- 1 user group     12 Apr  2 12:34 FILE1
-rwxr--r-- 1 user group    287 Apr 23  2017 File_
-rw-r--r-- 1 user group      0 Apr 21  2017 file_1
-rw-r--r-- 1 user group    272 Apr  3 22:16 myFile
-rw-r--r-- 1 user group  47633 Apr 11 14:01 myFile.txt
-rw-r--r-- 1 user group  37030 Apr 11 14:16 myfile1
-rw-r--r-- 1 user group      0 Apr 11 21:23 nothing_here
-rw-r--r-- 1 user group      2 Apr 22  2017 small_file
-rwxr-x--- 1 user group 262529 Apr  8 15:31 story

Это прибывает из MacBook и использует встроенный терминал и out-of-the-box установку ssh (Версия 10.13.3 OS X, как терминал говорит мне).

Рассмотрите в сравнении, тот же сервер получил доступ от выполнения машины Windows к выпуску 0.70 PuTTy:

-rwxr--r-- 1 user group    287 Apr 23  2017 File_
-rw-r--r-- 1 user group      0 Apr 21  2017 file_1
-rw-r--r-- 1 user group     12 Apr  2 12:34 FILE1
-rw-r--r-- 1 user group    272 Apr  3 22:16 myFile
-rw-r--r-- 1 user group  37030 Apr 11 14:16 myfile1
-rw-r--r-- 1 user group  47633 Apr 11 14:01 myFile.txt
-rw-r--r-- 1 user group      0 Apr 11 21:23 nothing_here
-rw-r--r-- 1 user group      2 Apr 22  2017 small_file
-rwxr-x--- 1 user group 262529 Apr  8 15:31 story

Заметьте другую сортировку первых 6 файлов в каждом изображении.

Полагая, что команды работают на сервере, а не на клиентских компьютерах, нельзя было бы ожидать различие между этими двумя выводами. Какова причина, они не идентичны, затем?

Редактирование 1: Как упомянуто в комментариях, я проверил, и терминал Mac установлен на xterm-256color в то время как Windows каждый установлен на xterm. Номер с переодеванием установки Mac на xterm имеемый никакой эффект.

Редактирование 2: Как упомянуто в комментариях, я попытался работать whereis ls, который дает разумное местоположение, Вы ожидали бы находить ls - т.е. bin/ls.

Редактирование 3: Избавленный от терминальных изображений, обменял их на правильно форматировавший код согласно этому сообщению meta.

Редактирование 4: Добавленные кавычки вокруг "$dir" предотвратить проблемы с пробелами.

15
задан 24 April 2018 в 08:01

2 ответа

То, что в конечном счете работало, было "Передающей Локалью Остановки От Клиента" подраздел в этом ответе. Просто прокомментируйте SendEnv LANG LC_* строка под Host в локальном /etc/ssh/ssh_config файл. Некоторое объяснение о том, что это делает, может быть найдено здесь.

4
ответ дан 23 November 2019 в 02:41

Порядок сортировки определяется переменными локали LC_ALL, LC_COLLATE и LANG (в этом порядке, при этом первым является самое сильное). Это также некоторые из нескольких переменных, которые обычно могут устанавливаться ssh клиентом. Проверьте и сравните эти переменные. Вы могли бы хотеть установить их на четко определенное значение на сервере (например, в .bash_profile), или удостоверьтесь, что Ваши ssh клиенты устанавливают то же последовательное значение.

30
ответ дан 23 November 2019 в 02:41

Другие вопросы по тегам:

Похожие вопросы: