Использование разделителя табуляции в сценарии Cut in Unix Shell [дубликат]

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

Вы можете попытаться запустить их под wine , но вы добьетесь большего успеха, преобразовав вашу установку W10 в виртуальную машину (VirtualBox или VMware) и запустив программы под Ubuntu на такой виртуальной машине.

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

3
26.09.2017, 17:08
2 ответа

bash интерпретирует

$'\t'

как табулятор, так

cut -d $'\t' -f 1

— это способ указать cutиспользовать табулятор в качестве разделителя (, который, однако, является избыточным, так как используется по умолчанию ). Однако я бы предпочел awk с таким же синтаксисом :

.
awk -v FS=$'\t' '{ print $1 }' < input.txt
1
27.01.2020, 21:08

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

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

SN=`echo "${line}"|cut -f1`

Но вы также можете вообще не использовать cut. Просто установите IFSна \t.

IFS=$'\t'
while read -r SN rest
do 
    echo "$SN"
done < input.txt
3
27.01.2020, 21:08

Теги

Похожие вопросы