Я считаю, что есть простое решение, но не могу его отладить.
У меня есть файл с именем « file name with space
». Как мне cat
этот файл в Linux bash?
Кавычки вокруг имени не работают?
cat "file name with space"
Третий вариант будет
cat 'file name with space'
где имя файла может содержать все, кроме '
.
Если это так, например, file n'ame
, замените каждый '
на '\''
:
cat 'file n'\''ame'
Используйте escape-символ '\', как это
cat file\ name\ with\ space
Заключение файла в двойные кавычки должно работать, т.е.
cat "file name with space"
Я столкнулся с этой проблемой в Linux и в Cygwin. Единственное, что я нашел, - это заключить имя в двойные кавычки и заменить нетрадиционные символы звездочками. Например:
Хвост File.basename.Работа с Spaces.log
становится ...
tail "File.basename.Работа * С * Spaces.log»
Я попытался избежать пробелов с помощью обратной косой черты, будь то незащищенный, защищенный двойными кавычками или защищенный одинарными кавычками, и во всех случаях tail анализировал имена в пробелах, как будто они не защищены.