Подтвердить что ты не робот

Окружать все строки в текстовом файле кавычками ( "что-то" )

У меня есть список каталогов, содержащих пробелы.

Мне нужно окружить их "', чтобы гарантировать, что мои командные скрипты будут работать.

Как можно объединить каждую новую строку с помощью "и" (кавычек).

например.

File1:

/home/user/some type of file with spaces
/home/user/another type of file with spaces

Для

File2:

'/home/user/some type of file with spaces'
'/home/user/another type of file with spaces'
4b9b3361

Ответ 1

Использовать sed?

sed -e "s/\(.*\)/'\1'/"

Или, как указано ниже, если каталоги могут содержать апострофы (кошмар, если они есть), используйте этот альтернативный

sed -e "s/'/'\\\\''/g;s/\(.*\)/'\1'/"

Ответ 2

Использование sed:

sed -i "s/^.*$/'&'/g" filename

Ответ 3

Вы можете использовать sed (1) для вставки одинарных кавычек в начале и конце каждой строки в файле так:

sed -i~ -e "s/^/'/;s/$/'/" the_file

Ответ 4

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

while read -r line
do
  echo "'$line'"
  # do something
done < "file"