Как получить список для ввода в кавычки

во-первых, я полный n00b со сценарием, поэтому, пожалуйста, простите любую неправильную терминологию.

У меня есть простой скрипт, который запускает скрипт python (используемый для дедупликации электронной почты через IMAP) после того, как пользователь ввел имя сервера, имя пользователя и пароль. Первая часть его получает список папок, которые вторая часть использует в качестве входных данных – все отлично, если только имя папки не содержит пробела, в этот момент запись должна быть в кавычках. В качестве примера Входящие в порядке, тогда как «Моя папка» должен быть прочитан как «Мой входящий»,

#!/bin/sh # Delete all duplicate messages in all folders of said account. # Note that we connect through SSL (-x) to the default port. read -p "Server: " SERVER read -p "Username: " USER read -s -p "Password: " PASS echo echo ........... echo FOLDER LIST echo ........... echo # Next line generates list for display only /tmp/IMAPdedup-master/imapdedup.py -s $SERVER -x -u $USER -w $PASS -l # Next line generates list to be used by the do line - this is the entries that need to have each line in quotations for folder in `/tmp/IMAPdedup-master/imapdedup.py -s $SERVER -x -u $USER -w $PASS -l`; do /tmp/IMAPdedup-master/imapdedup.py -s $SERVER -x -u $USER -w $PASS $folder done 

One Solution collect form web for “Как получить список для ввода в кавычки”

Вам не нужны имена для цитирования, вам нужны переменные, которые должны быть указаны. В частности, чтобы заставить ваш скрипт работать, вам нужно заменить for folder in ... loop:

 /tmp/IMAPdedup-master/imapdedup.py -s "$SERVER" -x -u "$USER" -w "$PASS" -l | while IFS= read -r folder; do /tmp/IMAPdedup-master/imapdedup.py -s "$SERVER" -x -u "$USER" -w "$PASS" "$folder" done 

Я предлагаю вам прочитать следующие сообщения, чтобы понять, почему:

  • Почему мой сценарий оболочки задыхается от пробелов или других специальных символов?
  • Чтение строк из файла с помощью bash: for vs. while
  • Как я могу читать строки за строкой из переменной в bash?
  • Как организовать и отрезать эту часть каталога в файл?
  • делает головной вход> вывод копирует все невидимые символы в новый файл?
  • Найдите не точное соответствие и возвращаемый столбец 1 этого файла
  • Отступ, как первая строка
  • Быстрый способ создания тестового файла с каждой секундой, представленной в формате YYYY-mm-dd HH: MM: SS
  • OS X / Linux one-liner / script, чтобы найти самую большую повторяющуюся группу строк в текстовом файле?
  • Использовать вставку с основным вводом
  • Можно ли использовать split для создания кусков символов из китайских байтов юникода?
  • Как добавить содержимое конкретного текстового файла в каждый текстовый файл в каталоге и его подкаталогах?
  • Инструмент оболочки для «tablify» входных данных, содержащих escape-коды ANSI
  • Присоедините два файла к двум общим полям
  • Linux и Unix - лучшая ОС в мире.