Bash имя файла с пробелами

Имена
Содержание

unixforum.org

Форум для пользователей UNIX-подобных систем

имя файла, содержащее пробелы и командная строка bash

Модератор: Bizdelnick

имя файла, содержащее пробелы и командная строка bash

Сообщение bakulenko » 16.02.2010 17:47

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

есть стойкое ощущение, что ранее у меня все запускалось, используя символ «\» перед каждым пробелом. Перебил систему с 32-бит на 64 и не могу стартануть файлы, содержащие пробелы, хотя сам bash по TAB подставляет необходимого вида строку.

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение mrcashe » 16.02.2010 18:28

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение drBatty » 16.02.2010 18:49

вчера перечислил 7 способов. вот восьмой, универсальный:

Всё заключаем в одиночные кавычки. После чего, внутренние одиночные кавычки меняем на ‘»‘»‘
бинго.

Читайте также:  Имена смайлами в вк

Скоро придёт
Осень

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение bakulenko » 16.02.2010 18:54

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение drBatty » 16.02.2010 19:18

вы не поняли!
не надо в смесь, заключайте всё в одиночные кавычки
единственное исключение, это если в имени есть такие кавычки, только в этом случае, внутренние кавычки меняются на комбинацию ‘»‘»‘

Скоро придёт
Осень

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение Reboot » 16.02.2010 19:22

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение WTakET » 16.02.2010 19:34

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение drBatty » 16.02.2010 19:50

как он такое напишет, если «сам по TAB подставляет»?

ЗЫЖ Вообще-то этот способ №4. №8 я ещё не придумал

Скоро придёт
Осень

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение bakulenko » 17.02.2010 07:55

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

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение NickLion » 17.02.2010 08:31

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение bakulenko » 17.02.2010 09:12

Попробую тогда свежий профиль сделать. Может косяк в том, что из 32-битки ломашнюю директорию подрубил как есть.

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение drBatty » 17.02.2010 09:53

а что вы мучаетесь? ну переименуйте файл в 1.avi
или mv тоже ругается? тогда в mc нажмите SHIFT+F6 на файле.

Скоро придёт
Осень

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение bakulenko » 17.02.2010 11:28

а что вы мучаетесь? ну переименуйте файл в 1.avi
или mv тоже ругается? тогда в mc нажмите SHIFT+F6 на файле.

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

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение drBatty » 17.02.2010 11:39

ага. используйте команду ln

Скоро придёт
Осень

Re: имя файла, содержащее пробелы и командная строка bash

Сообщение bakulenko » 17.02.2010 11:49

Источник

unixforum.org

Форум для пользователей UNIX-подобных систем

bash-циклы по параметрам, и имена файлов с пробелами

Модератор: /dev/random

bash-циклы по параметрам, и имена файлов с пробелами

Сообщение rm_ » 14.02.2009 03:41

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение Portnov » 14.02.2009 07:39

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение RasenHerz » 14.02.2009 09:14

Читайте также:  Фото с именами наташа

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение korisk » 14.02.2009 09:28

Можно попробовать пошаманить с xargs

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение Voice » 14.02.2009 13:11

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение rm_ » 14.02.2009 13:29

В общем похоже я на PHP буду этот скрипт делать, и дальше убеждаясь, что мало-мальски нетривиальные скрипты на шелле лучше даже и не начинать.

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение diesel » 14.02.2009 14:21

Re: bash-циклы по параметрам, и имена файлов с пробелами

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение rm_ » 14.02.2009 14:38

Да не в PHP дело. Ошибаетесь, если думаете что топик за этим был создан.

Я делал скрипт по преобразованию архива любого типа (из поддерживаемых atool+соотв.распаковщиком) в 7z.
Теперь работает как надо. Чтобы не быть голословным, вот он:

Может ещё чего посоветуете, в bash’е я не спец.
Но и на том спасибо.

watashiwa_darede.
да, так покороче

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение diesel » 14.02.2009 14:44

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение rm_ » 14.02.2009 14:56

Re: bash-циклы по параметрам, и имена файлов с пробелами

В некоторых частностях они различаются, но для разработчика, а не для пользователя.

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение diesel » 14.02.2009 15:37

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение kotnaton » 13.09.2011 02:50

Пытался по этой теме конвертировать в контейнер mp4 свои TS-ки:

Вместо этого, программа просто переписала исходники, погубив мою видеоколлекцию, к несчастью, не было запасных копий.

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение liaonau » 13.09.2011 03:59

О чем в этой теме упоминалось.

Причем здесь «пингвин» ☺? Поразительное заявление, феерично подменяющее понятия. Речь же исключительно об использовании оболочки и стандартных утилит. Если вам (лично вам, не всем же, разумеется) не понятен используемый вами командный язык, то не используйте его. Используйте другой. Оболочек, вообще-то много больше чем одна. Ну или perl, скажем, вполне можно запускать интерпретатором ☺.

А лучше просто выучите стандартный sh. А проще всего — не использовать пробелов в именах. Если переименовать нельзя — торрент, например, раздается, то есть же хардлинк — всего две буквы — ln.

А вообще, очевидно, что потеря чего-либо после команды пользователя — не есть потеря по вине ОС. Это ж не какой-нибудь баг в ФС, убивший данные.

Re: bash-циклы по параметрам, и имена файлов с пробелами

Сообщение kotnaton » 13.09.2011 04:30

UPD: Еще раз спасибо, и. извините, если был резок.

Читайте также:  Открытки с днем имени наталии

Источник

Bash имя файла с пробелами

Войти

Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal

Пробелы в командной строке Bash

О том что пробелы в Linux недопустимы, ну точнее нежелательны. я узнал еще на заре своего освоения этой системы. Тем ни менее, всегда возникает вопрос, а что с ними делать, дабы не создавать проблем. Частично ответ дается в этой статье.
Алексей Дмитриев, 23 сентября 2009

Если аргумент какой-либо команды содержит пробелы (или знаки табуляции) то Bash интерпретирует их как множественные аргументы. Вот, например, команда echo:
Но ошибкой будет считать, что команда такая «умная», что в точности воспроизводит введенный текст. Это не так:
На самом деле команда интерпретирует любое количество пробелов (и знаков табуляции) как один пробел; а пробел как разделитель между аргументами. Так как по умолчанию команда echo печатает стандартный вывод в одну строку, то и результат будет одинаковым с любым количеством пробелов.
Другие команды по умолчанию печатают свой вывод обработки каждого аргумента с новой строки, например команда print:
Тут уж сразу видно, что команда обрабатывала не фразу, а каждое слово как отдельный аргумент.
Как же заставить команду включить пробелы (и знаки табуляции) в свой стандартный вывод? Тут возможны два пути:
1. Маскировка при помощи обратного слэша (\). По-английски называется Escaping, а управляющие символы, начинающиеся с обратного слэша, Escapе-символами (само слово «escapе» переводится как исчезать, скрываться). Вот пример маскировки пробела:
Механизм такой маскировки прост: при помощи специального символа, обратного слэша, мы лишили пробела его значения как разделителя между аргументами, и теперь он интерпретируется Bash только как часть текста.
2. Закавычивание. Если заключить аргумент в кавычки, двойные или одинарные, то он всегда будет интерпретирован в качестве единого выражения. Например:
Такой же механизм работает и с командами, принимающими имена файлов в качестве аргумента. Имена файлов ведь тоже могут содержать пробелы; для примера создадим файл по имени text file и попытаемся просмотреть его при помощи команды cat:
Применим маскировку:
Или кавычки:
А интересно, справится ли с этой задачей автозавершение?

Автозавершение выбрало вариант маскировки. Это не удивительно, ведь маскировать приходится не только пробелы, но и управляющие символы, с которыми кавычки не справятся.
Пока мы рассматривали только пробелы внутри аргумента команды. Лишние же пробелы перед командой, между командой и опциями, между опцией и аргументом, как правило, игноририруются. Если только иное поведение специально не оговорено в синтаксисе команды.
И, наконец, пробел, поставленный вместо аргумента многих команд, заставляет их принимать стандартный ввод. Например:
Развлечемся после трудного рабочего дня? На буржуйском сайте Free Games есть куча оригинальных игр для вашего мобильника, смартфона или коммуникатора.
Если вас интересуют вопросы заработка в сети, обратите внимание на HYIP форум. Там собрана подборка вопросов и ответов на самые актуальные темы интернет-заработка.

Источник

Оцените статью
Имя, Названия, Аббревиатуры, Сокращения
Добавить комментарий

Adblock
detector