В Windows исполнительный файл EXE, а какой он в Linux Ubuntu?
тот которому ты даш право быть исполняемым поставив соответствующую галку в свойствах этого файла, как известно понятие расширения в Линукс системах нивелировано, на него совсем не обращает внимания система, а существуют они там лишь для удобства пользователя привыкшего к вяндузовско — досовскому гониву под названием «расширение»
Да здравствует Линукс. !
Кстати — в вянде не только exeшники являются исполняемыми, не забывай ещё о bat, cmd,com,vbs, scr и остальной хрени.
P.S. О дуристике которую понаписывали после меня малограмотные люди — файлы с окончанием .sh (как по сути и тот же .run) — это файлы которые должны быть исполнены посредством прямой команды в консоли (в терминале) deb пакеты — это не аналог exe для вянды, это аналог msi виндузовского — тупо установочник (но никак блин не исполняемый) и не факт что подойдёт любой именно для убунту, достаточно деб пакетов и для того же дебиана, которые штатные средства установки программ убунту (синаптик, апт -джет, дждеби, аптитуд) откажутся устанавливать, а если и установят то в большинстве случаев это приведёт к повреждению системы (ибо для установки ты должен будешь либо дать собственный пароль через судо чтобы подтвердить свои админские права на операцию, либо войти под рутом, дав пароль рута) — вывод — реально ИСПОЛНЯЕМЫМ является тот файл которому ты даш право быть исполняемым в свойствах этого файла являясь его владельцем (либо предоставив пароль администратора подтвердив что ты рут)
Желаю успехов в познании прекраснейшего мира под названием Линукс.
Файл с расширением deb. Запускается так же как екзешник. Хотя это не исполнительный а скорее пакетный. Есть еще tar.bz, но с ними геморнее работать. Запускать нужно через консоль специальной командой и прописывать путь к файлу. Сорри это в кубунте))) ) deb. В убунте .sh
Файлы в Linux
Первое, что вам нужно понять: в Linux на техническом уровне все на самом деле является файлом. Текстовый файл — это файл, папка — это файл, ваша клавиатура — это файл (его система может только читать), ваш монитор — это файл (в него система может только записывать) и т. д. Конечно, эти знания не слишком помогут с тем, что мы делаем сейчас, однако они позволяют лучше понимать поведение Linux.
В Linux нет расширений
Это немного непривычно, но со временем все станет понятнее. Расширение файла обычно представляет собой набор из 2–4 символов после точки в конце файла, который обозначает тип файла. Ниже приведены распространенные расширения:
- file.exe — исполняемый файл.
- file.txt — простой текстовый файл.
- file.png, file.gif, file.jpg — изображение.
В других системах, таких как Windows, расширение важно: система использует его для определения типа файла. Linux игнорирует расширение и просматривает файл, чтобы определить, какой это тип. Так, например, у нас может быть файл photo.png с какой-то фотографией. Мы можем переименовать файл в photo.txt или просто в photo, и Linux все равно обработает этот файл как файл с изображением. Поэтому иногда бывает трудно определить, к какому типу относится конкретный файл. К счастью, есть команда под названием file , с помощью которой это можно выяснить.
Вам, наверное, интересно, почему в качестве аргумента мы указали путь к файлу вместо его имени. Если вы помните из предыдущей статьи, всякий раз, когда мы указываем файл или каталог в командной строке, на самом деле мы указываем их путь. Кроме того, поскольку каталоги (как упоминалось выше) на самом деле являются просто особым типом файлов, было бы точнее сказать, что путь — это средство доступа к определенному месту в системе, и это местоположение является файлом.
Linux чувствителен к регистру
Это часто вызывает проблемы у людей, которые плохо знакомы с Linux. В других системах, таких как Windows, регистр не учитывается при обращении к файлам. С Linux не так. То есть можно иметь два или более файлов и каталогов с одинаковыми именами, но буквами разного регистра. И это будут разные файлы.
1. [email protected]: ls Documents
2. FILE1.txt File1.txt file1.TXT
3. …
4. [email protected]: file Documents/file1.txt
5. Documents/file1.txt: ERROR: cannot open ‘file1.txt’ (No such file or directory)
Параметры командной строки тоже чувствительны к регистру. Например, для команды ls есть две опции s и S , которые делают совершенно разные вещи. Распространенная ошибка — нам нужна опция, которая пишется в верхнем регистре, а мы пишем ее в нижнем и удивляемся, почему результат не соответствует нашим ожиданиям.
Пробелы в именах файлов
Пробелы в именах файлов и каталогов вполне допустимы, но с ними нужно быть немного осторожнее. Как вы помните, пробел в командной строке разделяет элементы. С его помощью мы узнаем, что является именем программы, а что — аргументами командной строки. Если бы мы хотели перейти в каталог под названием Holiday photos, то способ из примера ниже не сработал бы:
1. [email protected]: ls Documents
2. FILE1.txt File1.txt file1.TXT Holiday Photos
3. …
4. [email protected]: cd Holiday Photos
5. bash: cd: Holiday: No such file or directory
Дело в том, что Holiday Photos рассматривается как два аргумента командной строки. Команда cd переходит в каталог, указанный только первым аргументом. Чтобы обойти это, нам нужно указать терминалу, что мы хотим, чтобы Linux рассматривал Holiday Photos как один аргумент командной строки. Есть два способа сделать это.
Кавычки
Первый способ — использовать кавычки. Можно использовать одинарные или двойные. Позже мы увидим, что между ними есть небольшая разница, но пока это несущественно. Все, что находится внутри кавычек, считается одним элементом.
1. [email protected]: cd 'Holiday Photos'
2. [email protected]: pwd
3. /home/karpaff/Documents/Holiday Photos
Управляющие символы
Другой способ — использовать так называемый управляющий символ, то есть обратную косую черту \ . Обратная косая черта экранирует (или аннулирует) особое значение следующего за ней символа.
1. [email protected]: cd Holiday\ Photos
2. [email protected]: pwd
3. /home/karpaff/Documents/Holiday Photos
В приведенном выше примере пробел между Holiday и Photos обычно имеет особое значение: он разделяет их на отдельные аргументы командной строки. Поскольку мы поместили перед ним обратную косую черту, это особое значение было отменено.
Примечание. В предыдущем разделе мы узнали о заполнении строки нажатием клавиши Tab. Если вы используете это до того, как столкнетесь с пробелом в имени каталога, терминал автоматически отключит любые пробелы в имени.
Скрытые файлы и каталоги
На самом деле в Linux есть очень простой и элегантный механизм для указания того, что файл или каталог скрыт. Если имя файла или каталога начинается с . (точки), то файл считается скрытым. Вам даже не нужна специальная команда или действие, чтобы скрыть файл.
Файлы и каталоги могут быть скрыты по разным причинам. Например, файлы конфигурации для конкретного пользователя (которые обычно хранятся в домашнем каталоге) скрыты, чтобы они не мешали пользователю выполнять свои повседневные задачи.
Чтобы сделать файл или каталог скрытым, все, что вам нужно сделать, это создать файл или каталог с именем, начинающимся с . . Аналогичным образом вы можете переименовать скрытый файл, удалить точку, и он перестанет быть скрытым.
Команда ls , которую мы видели в предыдущем разделе, по умолчанию не выводит список скрытых файлов и каталогов. Мы можем отобразить скрытые файлы и каталоги, включив параметр -a .
1. [email protected]: ls Documents
2. FILE1.txt File1.txt file1.TXT
3. .
4. [email protected]: ls -a Documents
5. . FILE1.txt File1.txt file1.TXT .hidden .file.txt
6. .
В приведенном выше примере вы видите, что, когда мы перечислили все элементы в нашем текущем каталоге, первые два элемента были . и .. . Если вы не знаете, что это такое, то вам стоит прочитать статью об основах навигации в Linux.
Что нужно запомнить
Команды
file
Позволяет получить информацию о типе файла.
ls -a
Перечисляет содержимое каталога, включая скрытые файлы.
Идеи
В Linux все является файлом.
Даже каталоги.
Linux — это система без расширений.
Файлы могут иметь любое расширение или вообще не иметь.
Linux чувствителен к регистру.
Остерегайтесь глупых опечаток.
Практические задания
-
- Попробуйте запустить команду file с различными входными данными. При этом убедитесь, что вы попробовали как абсолютные, так и относительные пути.
- Теперь выполните команду, которая выведет список содержимого вашего домашнего каталога, включая скрытые файлы и каталоги.
СodeСhick.io — простой и эффективный способ изучения программирования.
2023 © ООО «Алгоритмы и практика»