Яка різниця між "dir" та "ls"?


17

Я порівняв ЧОЛОВІК сторінки dirі lsвони здаються такими самими. Обидва є частиною GNU coreutils та "списком вмісту каталогів".

Єдина відмінність, яку я бачив до цього часу, - це те, dirщо не забарвлює вихід.

То чому існують дві команди? Чи є різниця, яку я пропустив? Чому б воліти dirбільше ls?


8
Один би ні! Колись!
Банангуін

Відповіді:


20

Я схильний би думати, що dirіснує лише задля зворотної сумісності .

Від GNU Coreutils :

dir еквівалентно ls -C -b; тобто файли за замовчуванням перераховані в стовпці, відсортовані по вертикалі, а спеціальні символи представлені зворотними слідами послідовності.

До речі, lsНЕ розфарбувати вихід за замовчуванням: це тому , що більшість дистрибутивів псевдоніма lsдля ls --color=autoв /etc/profile.d. Для тесту введіть, unalias lsа потім спробуйте ls: він буде безбарвним.


6
dirне передбачено для зворотної сумісності. Натомість lsпрацює так, як це робиться для зворотної сумісності (і тому, що багато користувачів хочуть, щоб вона працювала таким чином), і dirнадається як альтернатива, що розробники GNU вважають переважно кращим, оскільки її вихід не залежить від пристрою. Дивіться 4.5 Стандарти на інтерфейси Загалом у стандартах кодування GNU та мою відповідь на це питання АС для деталей.
Eliah Kagan

8

dirне є стандартною командою Unix, але, ймовірно, лише своєрідний псевдонім / клон, щоб забезпечити деяке знайомство з користувачами Windows (DOS) (і, можливо, VAX-VMS та іншими ОС, де dirвикористовувався для переліку файлів).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.