Какой символ отделяет расширение от имени файла точкой с запятой и двоеточием

Обновлено: 03.07.2024

Я использую Excel и хочу экспортировать свой файл как лист .scsv (значения, разделенные точкой с запятой), а не .csv. Есть ли способ сделать это?

пс. Я не могу сделать .csv и найти и заменить запятые точкой с запятой, потому что поля уже содержат запятые.

Если вы готовы немного попрограммировать, конвертер можно довольно легко написать на языке программирования Python, используя встроенный модуль csv, который упростит чтение файлов Excel .csv, а затем напишет новые версии те, у которых был практически любой желаемый разделитель.

12 ответов 12

Как насчет использования Tab Delimited и замены табуляции точками с запятой?

В Excel: "Файл" -> "Сохранить как" -> в разделе "Формат" выберите "Текст с разделителями табуляции (.txt)", затем сохраните его.

Откройте файл в блокноте и откройте окно замены. Поскольку вы не можете вкладывать вкладку прямо в это окно, скопируйте вкладку из документа, а затем вставьте ее в поле «Найти» и поместите ; в поле замены. Затем замените все.

Я предполагаю, что это сработает, поскольку вкладки в документе Excel очень редки.

Я не думаю, что это можно сделать полностью в Excel. Excel скрывает форматирование (вкладки), поэтому вы не сможете их заменить. После замены их точками с запятой вы также не сможете открыть их в Excel (это будет просто одна гигантская ячейка)

Если в вашем файле есть специальные символы другого языка (например, греческого), это не работает, так как символы символов заменяются на '?'

Я не думаю, что вы можете установить разделитель вывода непосредственно в Excel, но (при условии, что Windows) вы можете изменить разделитель списка ОС на ; - это делается в «Региональные настройки» -> «Настроить». Excel будет использовать этот параметр для вывода ваших CSV-файлов.

Важное примечание: если вы сделаете это, все программы Windows, использующие интернационализированные библиотеки Windows, будут считать, что ; является символом-разделителем для всех файлов CSV. Если это одноразовое решение, вероятно, имеет смысл сохранить обычный CSV-файл и использовать редактор для замены запятых на точки с запятой

Это изменение также повлияет на открытие файлов CSV в Excel. И, как упоминалось в комментарии выше, возможно, больше программ. Если вы хотите сделать CSV-файл более совместимым, поставьте sep=; поверх CSV-файла, а затем, сохранив файл, вы можете изменить разделитель списков на прежний.

Я хочу отметить, что это настройка Панели управления Windows на тот случай, если вы постоянно ищете в Excel (как это было со мной). Как упоминалось в других комментариях, это влияет на все программы, использующие этот параметр. В моем случае я временно изменю настройку, чтобы экспортировать лист, а затем вернуться обратно.

Используйте LibreOffice Calc (его можно загрузить бесплатно и он работает во всех основных операционных системах).

Чтобы сохранить значения, разделенные точкой с запятой:

  1. Откройте файл xlsx/csv.
  2. Файл -> Сохранить как.
  3. Выберите в качестве фильтра "Фильтр CSV" (должно быть по умолчанию, если имя вашего файла заканчивается на .csv )
  4. Отметьте "Изменить настройки фильтра" и нажмите "Сохранить".
  5. Когда появится запрос на подтверждение формата файла, нажмите "Использовать текстовый формат CSV"
  6. Замените "Разделитель полей" на точку с запятой (здесь вы можете ввести что угодно).
  7. Нажмите "ОК".

LO Calc правильно обрабатывает запятые и точки с запятой в значениях ячеек.

Если вам нужен сценарий, вставьте следующее в модуль.

Чтобы изменить запятую на точку с запятой в качестве разделителя Excel по умолчанию для CSV, перейдите в раздел «Регион» -> «Дополнительные настройки» -> вкладка «Числа» -> разделитель списка и введите ; вместо значения по умолчанию

Вы можете глобально изменить разделитель с помощью настройки формата.

Перейдите к разделу «Регион и язык», откройте «Регион», на вкладке «Форматы» нажмите кнопку «Дополнительные настройки», а на вкладке «Числа» измените значение для разделителя списка:


Не просто размещайте ссылку на ответ, включайте в ответ существенные детали. Если целевая страница исчезает, то ответ бесполезен. Кроме того, хотя я не эксперт по Windows, это выглядит так же, как ответ wmz трехлетней давности.

1.> Изменить формат файла на .CSV (разделенный точкой с запятой)

Для достижения желаемого результата нам нужно временно изменить настройку разделителя в параметрах Excel.

Перейти к файлу -> Параметры -> Дополнительно -> Раздел редактирования

Снимите флажок "Использовать системные разделители" и поставьте запятую в поле "Десятичный разделитель".

Теперь сохраните файл в формате .CSV, и он будет сохранен в формате, разделенном точкой с запятой.

Жаль, что в этом вопросе не указана надлежащая атрибуция. Спустя 7 лет был отправлен ответ низкого качества, и теперь я должен проголосовать за ответ, который, скорее всего, был более качественным, чем ответ, который был отправлен сегодня.

На самом деле, это может быть самый простой и, тем не менее, правильный подход. Спас мой день.Снимите флажок «Использовать системные разделители» и сохраните как «разделенные запятыми», на самом деле сохранится как «разделенные точкой с запятой».

Если ваш список значений находится в столбце A, попробуйте следующее: ячейка B2 =A1&";"&A2 ячейка B3 =B2&";"&A3 Скопируйте ячейку B3 в конец списка. Если вы скопируете и вставите последнюю ячейку в свой список в качестве значений, у вас будет список, разделенный точкой с запятой. Затем вы можете скопировать это в Блокнот, Word или куда угодно.

Вы можете легко сделать это за 4 шага с помощью функции конкатенации Excel.

Добавьте в свой файл столбец с символами точки с запятой, где вы ожидаете, что они появятся при экспорте в формате .csv.

Начните новый столбец в конце данных и в первой строке используйте функцию =concatenate(). Обязательно выберите все ячейки, которые вы хотите отобразить в конечном файле. Ваша формула будет выглядеть примерно так =concatenate(A1,A2,A3. )

Скопируйте и вставьте полученную формулу во все строки данных.

Выделите весь столбец формул и Специальная вставка -> Значения в соседний столбец. Теперь у вас есть все ваши данные, разделенные точкой с запятой.

Наконец, экспортируйте в нужный формат файла. Если вы экспортируете это как .txt в Windows, вы можете просто изменить расширение файла на .csv, потому что оба являются текстовыми форматами.

Расширение файла .txt.

Расширение файла или расширение имени файла — это окончание файла, которое помогает определить тип файла в операционных системах, таких как Microsoft Windows. В Microsoft Windows расширение имени файла представляет собой точку, за которой часто следуют три символа, но также может быть один, два или четыре символа.

Пример расширения файла

Например, имя файла "myfile.txt" имеет расширение ".txt", которое является расширением имени файла, связанным с текстовыми файлами.

Список файлов в проводнике с именем и расширением

В приведенном выше примере первым файлом, отображаемым в проводнике, является файл «Regedit.exe». «Regedit» — это имя файла, а «.exe» — это расширение файла, которое идентифицирует этот файл как исполняемый файл. Следующий файл, «RtlExUpd.dll», является файлом DLL, а последние два файла являются файлами журналов. Имея расширения имени файла, вы можете быстро определить тип файла и лучше понять, как этот файл можно открыть.

Если вы пытаетесь найти файл с определенным расширением, используйте в поиске подстановочные знаки.

Что делает расширение имени файла допустимым?

Расширение имени файла часто состоит из одного-трех символов и всегда стоит в конце имени файла, начиная с точки. Некоторые программы также поддерживают расширения файлов, содержащие более трех символов. Например, все последние версии Microsoft Word поддерживают файлы документов .docx, а некоторые веб-страницы имеют расширение .html.

Во всех новых версиях Microsoft Windows по умолчанию расширения файлов скрыты, и у вас должен быть включен показ расширений файлов. Дополнительные сведения о включении этой функции см. в статье Как просмотреть расширение файла на компьютере.

Может ли расширение файла быть длиннее трех или четырех символов?

Да. Поскольку программа была разработана для использования более длинного расширения файла, оно может быть длиннее четырех символов. Однако, чтобы общее имя файла было коротким, длина большинства программ не превышает четырех символов.

Существует ли ограничение на длину расширения файла?

Ограничение на расширение файла отсутствует, если путь к файлу, имя и расширение в совокупности не превышают максимально допустимое количество символов в имени файла, установленное в операционной системе. Ниже приведен список версий Microsoft Windows и их ограничение на количество символов в именах файлов.

Windows 10 — 260 символов.
Windows 8 — 260 символов.
Windows 7 — ограничение на 260 символов.
Windows Vista - ограничение в 260 символов.
Windows XP - ограничение в 255 символов.
Windows 2000 — 254 символа.

Сколько существует типов расширений файлов?

Существуют тысячи расширений файлов, связанных с одним или несколькими приложениями. Некоторые из наиболее распространенных расширений файлов перечислены ниже, разделенные по типам файлов, связанных с расширениями файлов.

На самом деле проблема не так серьезна, как некоторые могут подумать. Из 32 знаков препинания, доступных на клавиатуре, все, кроме девяти, можно использовать в именах файлов.


С другой стороны, если вы используете Microsoft Word, вы можете подумать, что все знаки препинания заблокированы. Вот почему:


Нажмите, чтобы открыть полный размер

Когда вы сохраняете новый файл в Word, программа открывает диалоговое окно "Сохранить как" и вставляет начальный текст документа в качестве вероятного имени файла. Но Word обрезает этот текст при первом найденном знаке препинания. Другими словами, если ваш документ начинается с заголовка Путешествие пилигрима, Word предложит вам сохранить файл как Пилигрим, но вы не обязаны соглашаться с этим. Вы можете ввести или вставить полное имя с апострофом и сохранить файл.

Но вы по-прежнему не можете сохранить файл с одним из этих девяти символов. Почему?

Windows, как и DOS до нее, использует эти символы для поиска, инструкций командной строки и путей, определяющих расположение файлов. Например, сейчас я пишу файл November Answer Line.docx в папке 1211, которая находится в папке Dropbox. , внутри Documents, внутри Lincoln, на моем диске D:. Полный путь к файлу, включая имя: D:LincolnDocumentsDropbox1211November Answer Line.docx.

Если бы я мог переименовать файл NovemberAnswer:Line.docx, Windows не узнала бы, является ли November папкой или частью имени файла. Чтобы избежать этой путаницы, ОС просто запрещает использование обратной косой черты () в именах файлов.

Честно говоря, мне бы хотелось, чтобы Microsoft была более строгой в отношении таких вещей и не позволяла нам использовать точки (.) в именах файлов.

В каждом имени файла точка отделяет имя, указывающее, что находится в файле, от расширения, указывающего Windows, к какому типу относится файл. Поскольку Windows по умолчанию скрывает расширения, дополнительная точка в имени файла может сделать один тип файла похожим на другой.

Разработчикам вредоносного ПО нравится этот прием. Еще в сентябре троянец Troj/Backdr-HG распространялся с помощью файла Microsoft-Services-Agreement.pdf.exe, который многим пользователям казался похожим на Microsoft-Services-Agreement.pdf.

Люди думали, что открывают PDF-файл, когда на самом деле запускали программу.

Мы очень часто сталкиваемся с именами файлов и папок. В большинстве случаев имя файла/папки связано с содержимым файла/папки и начинается с цифры и символов. Буквенно-цифровые имена файлов довольно распространены и очень широко используются, но это не тот случай, когда нам приходится иметь дело с именами файлов/папок, в которых есть специальные символы.

Примечание. У нас могут быть файлы любого типа, но для простоты реализации мы будем иметь дело с текстовым файлом (.txt) на протяжении всей статьи.

Примеры имен файлов, которые имеют специальный характер и не очень распространены:

Я согласен с вами, что такие имена файлов не являются обычным явлением, но ваша оболочка не должна ломаться/сдаваться, когда вам приходится иметь дело с любыми такими именами файлов. Кроме того, с технической точки зрения все, будь то папка, драйвер или что-либо еще, в Linux рассматривается как файл.

Работа с файлом, в имени которого есть дефис (-)

Создайте файл, начинающийся с дефиса (-), например -abx.txt.

Пример вывода

Причина вышеуказанной ошибки в том, что оболочка интерпретирует все, что следует после тире (-), как параметр, и, очевидно, такого параметра нет, отсюда и ошибка.

Чтобы устранить эту ошибку, мы должны указать оболочке Bash (да, этот и большинство других примеров в статье для BASH) не интерпретировать ничего после специального символа (здесь тире) как вариант.

Есть два способа устранить эту ошибку:

Вы можете проверить созданный таким образом файл обоими указанными выше способами, выполнив команды ls или ls -l для получения длинного списка.

Чтобы отредактировать вышеуказанный файл, вы можете сделать следующее:

Примечание. Вы можете заменить nano любым другим редактором по вашему выбору, скажем, vim как:

Аналогично для перемещения такого файла нужно сделать:

и чтобы удалить этот файл, вы должны сделать:

Если у вас много файлов в папке, имя которой содержит тире, и вы хотите удалить их все сразу, сделайте следующее:

Важно отметить:
<р>1. То же правило, что обсуждалось выше, действует для любого количества дефисов в имени файла и их появления. А именно, -a-b-c.txt, ab-c.txt, abc-.txt и т. д.

<р>2. То же правило, что обсуждалось выше, действует для имени папки с любым количеством дефисов и их встречаемостью, за исключением того, что для удаления папки необходимо использовать «rm -rf» как:

Понять это на примерах:
Пример вывода

и проверьте только что созданный файл как:

Запустите ‘ls -l‘, чтобы проверить это:

Проверьте только что созданный файл:

и подтвердите это как:

Вы можете переместить файл как:

Вы можете отредактировать его, используя выбранный вами редактор, например:

И удалить как:

Работа с файлами, в имени которых есть точка с запятой (;)

Если вы не в курсе, точка с запятой действует как разделитель команд в BASH и, возможно, в других оболочках. Точка с запятой позволяет выполнить несколько команд за один раз и действует как разделитель. Вы когда-нибудь имели дело с каким-либо именем файла, содержащим точку с запятой? Если не здесь, вы будете.

Создайте файл с точкой с запятой.

Пример вывода

Причина вышеуказанной ошибки заключается в том, что когда вы запускаете указанную выше команду, BASH интерпретирует touch как команду, но не может найти файловый операнд перед точкой с запятой и, следовательно, сообщает об ошибке. Он также сообщает о другой ошибке, что команда «abc.txt» не найдена, только потому, что после точки с запятой BASH ожидал другую команду, а «abc.txt» не является командой.

Чтобы устранить эту ошибку, скажите BASH не интерпретировать точку с запятой как разделитель команд, например:

Примечание. Мы заключили имя файла в одинарные кавычки '' . Он сообщает BASH, что ; является частью имени файла, а не разделителем команд.

Остальные действия (а именно копирование, перемещение, удаление) над файлом и папкой, в имени которых есть точка с запятой, можно выполнить напрямую, заключив имя в одинарные кавычки.

Работа с другими специальными символами в имени файла/папки

Знак плюса (+) в имени файла

Не требуется ничего лишнего, просто делайте это как обычно, используя простое имя файла, как показано ниже.

Знак доллара ($) в имени файла

Вы должны заключить имя файла в одинарные кавычки, как мы сделали в случае с точкой с запятой. Остальные вещи прямолинейны..

Процент (%) в имени файла

Вам не нужно ничего делать по-другому, обращайтесь с ним как с обычным файлом.

Звездочка (*) в имени файла

Наличие звездочки в имени файла ничего не меняет, и вы можете продолжать использовать его как обычный файл.

Примечание. Если вам нужно удалить файл, начинающийся с * , никогда не используйте следующие команды для удаления таких файлов.

Восклицательный знак (!) в имени файла

Просто заключите имя файла в одинарные кавычки, и все остальное останется прежним.

Подпись (@) в имени файла

Ничего лишнего, считайте файл с именем At Sign нестандартным.

^ в имени файла

Не требует дополнительного внимания. Используйте файл со знаком ^ в имени как обычный файл.

Амперсанд (&) в имени файла

Имя файла должно быть заключено в одинарные кавычки, и все готово.

Скобки () в имени файла

Если имя файла содержит круглые скобки, необходимо заключить имя файла в одинарные кавычки.

Квадратные скобки <> в имени файла

Дополнительный уход не требуется. Просто относитесь к нему как к другому файлу.

Шевроны <> в имени файла

Имя файла с шевронами должно быть заключено в одинарные кавычки.

Квадратные скобки [ ] в имени файла

Рассматривайте имена файлов, содержащие квадратные скобки, как обычные файлы, и вам не нужно заботиться об этом.

Низкая оценка (_) в имени файла

Они очень распространены и не требуют ничего дополнительного. Просто сделайте то же, что и с обычным файлом.

Равно (=) в имени файла

Наличие знака равенства ничего не меняет, вы можете использовать его как обычный файл.

Работа с обратной косой чертой (\)

Обратная косая черта указывает оболочке игнорировать следующий символ. Вы должны заключить имя файла в одинарные кавычки, как мы сделали в случае с точкой с запятой. Остальное просто.

Особый случай косой черты

Вы не можете создать файл, имя которого содержит косую черту (/), пока в вашей файловой системе не будет ошибки. Невозможно избежать косой черты.

Поэтому, если вы можете создать такой файл, как ‘/12.txt’ или ‘b/c.txt’, то либо в вашей файловой системе есть ошибка, либо у вас есть поддержка Unicode, что позволяет создавать файл с косой чертой. В этом случае косая черта — это не настоящая косая черта, а символ Юникода, похожий на косую черту.

Вопросительный знак (?) в имени файла

Опять же пример, где не нужно прилагать особых усилий. Имя файла со знаком вопроса можно трактовать самым общим образом.

Точка (.) в имени файла

Файлы, начинающиеся с точки (.), имеют особое значение в Linux и называются точечными файлами. Это скрытые файлы, как правило, конфигурационные или системные файлы. Вы должны использовать переключатель «-a» или «-A» с командой ls для просмотра таких файлов.

Создание, редактирование, переименование и удаление таких файлов очень просто.

Примечание. В Linux в имени файла может быть столько точек (.), сколько вам нужно. В отличие от других системных точек в имени файла нет разделения имени и расширения. Вы можете создать файл с несколькими точками как:

и проверьте это как:

Запятая (,) в имени файла

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

Двоеточие (:) в имени файла

В имени файла может быть сколько угодно двоеточий, и вам не нужно ничего дополнительно. Просто сделайте это как обычно, как простое имя файла.

Наличие кавычек (одинарных и двойных) в имени файла

Чтобы иметь кавычки в имени файла, мы должны использовать правило обмена. То есть, если вам нужно иметь одинарную кавычку в имени файла, заключите имя файла в двойные кавычки, а если вам нужно иметь двойную кавычку в имени файла, заключите его в одинарную кавычку.

Тильда (~) в имени файла

Некоторые редакторы в Linux, такие как emacs, создают резервную копию редактируемого файла. Файл резервной копии имеет имя исходного файла плюс тильду в конце имени файла. Вы можете иметь файл, имя которого включает тильду, в любом месте просто так:

Пробел в имени файла

Создайте файл, в имени которого есть пробел между символом/словом, скажите «привет, меня зовут avishek.txt».

Не рекомендуется использовать в имени файла пробелы, и если вам нужно выделить удобочитаемое имя, вы должны использовать знаки подчеркивания или тире. Однако, если вам нужно создать такой файл, вы должны использовать обратную косую черту, которая игнорирует следующий за ним символ. Чтобы создать вышеуказанный файл, мы должны сделать это следующим образом..

Я пытался охватить все сценарии, с которыми вы можете столкнуться. Большинство приведенных выше реализаций явно предназначены для оболочки BASH и могут не работать в другой оболочке.

Если вы чувствуете, что я что-то упустил (это очень распространено и характерно для человека), вы можете включить свое предложение в комментарии ниже. Оставайтесь на связи, продолжайте комментировать. Оставайтесь с нами и на связи! Ставьте лайки, делитесь нами и помогайте нам распространяться!

Если вам понравилась эта статья, подпишитесь на уведомления по электронной почте о руководствах по Linux. Если у вас есть вопросы или сомнения? обратитесь за помощью в разделе комментариев.

Если вы цените то, что мы делаем здесь, в TecMint, вам следует подумать о следующем:

TecMint – это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! для поиска или просмотра тысяч опубликованных статей, доступных всем БЕСПЛАТНО.

Если вам нравится то, что вы читаете, купите нам кофе (или 2) в знак признательности.

Поддержите нас

Мы благодарны за вашу бесконечную поддержку.

Похожие записи

 Отключить Su Access для пользователя

 Переместить домашний каталог в новый раздел

Система Linux Команды администратора

 Как скачать файлы в Linux

Примеры Linux Cron

Linux Vmstat и команды Iostat

10 мыслей о том, «Как работать с именами файлов, содержащими пробелы и специальные символы в Linux»

Как я могу переместить файлы из одного места в другое, если оно содержит пробелы, используя оболочку?

«В имени файла может быть сколько угодно двоеточий, и вам не нужно ничего лишнего».

При создании имени файла с двоеточием проблем может и не быть, но могут возникнуть проблемы с управлением файлом.

При использовании MX Linux (версия 19.4) у меня нет проблем с созданием файла с двоеточием в имени. Однако, когда я пытаюсь скопировать его на другое устройство или в другой каталог, я получаю сообщение об ошибке «Недопустимое имя файла». Чтобы сделать имя файла «действительным», я должен убрать двоеточие.

У меня есть файл с именем ~$S123.docx в AIX, когда я запускаю приведенную ниже команду, появляется сообщение, что файл не найден

а как насчет имени файла, в котором есть тире и пробелы вроде этого:

Я создаю сценарий оболочки, необходимый для копирования файлов. Этот скрипт имеет три параметра, первый параметр — это файл .txt, содержащий список файлов, второй параметр — расположение файлов, а последний параметр — путь к месту назначения.

Я сталкиваюсь с проблемой, когда мне приходится копировать файлы, имена которых содержат пробелы.

Можете ли вы помочь мне с этим?

Большое спасибо, действительно отличная статья с хорошими практическими примерами..

Что касается аргумента терминала, «touch *12.txt» может открыть более одного файла, если у вас есть файл с именем a12.txt, b12.txt и т. д. в текстовом редакторе, таком как Geany, или первый файл в алфавитном порядке в Nano. .

Мы можем устранить эту проблему, передав имя файла в одинарную кавычку, чтобы устранить специальные символы, присутствующие в файле.

Здравствуйте, у меня много файлов с [!] в их именах, мне нужно переместить только эти файлы в другую подпапку, я пытаюсь с

для файла в $(ls | grep -e ".[!]]" | awk ‘NF < print “\””$0″\””>’); do mv -f «$PWD/$file» «$PWD/Folder001/» ; готово

но это невозможно, потому что bash в «do mv -f «$PWD/$file»
читается «Это пример большого имени файла.ext», например

Это -> Файл1
является -> Файл2
an -> Файл 3
пример -> Файл 4
из -> Файл 5
большой -> Файл 6
filename.ext -> Файл 7

Как я могу использовать «mv» для большого имени файла со специальными символами, такими как [!] (EJU), в другую папку.

такие файлы легко создать, « » решит всю ситуацию, но сложно их обработать в своем скрипте или команде.
Самое уродливое имя файла, которое я видел, это «xxx», так как, когда я перечисляю его в терминале, я не могу знать, сколько пробелов содержит это имя. а если в скрипте, то без проблем получит имя через API

Есть что сказать? Присоединяйтесь к обсуждению. Отменить ответ

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются данные ваших комментариев.

Читайте также: