GREP не удается с переменными, но работает, если переменная прописана

Попробуйте следующее:

apt-get remove --purge mysql*
apt-get remove --purge mysql
apt-get remove --purge mariadb
apt-get remove --purge mariadb*
apt-get --purge remove mariadb-server
apt-get --purge remove python-software-properties

Примечание. При появлении запроса о том, хотите ли вы сбросить текущие базы данных, скажи "нет. Но вы можете легко деконфигурировать базу данных phpmyadmin.

Установите все заново: Добавьте следующее в свой /etc/apt/sources.list файл:

deb [arch=amd64,i386] http://ftp.utexas.edu/mariadb/repo/10.1/debian jessie main
deb-src http://ftp.utexas.edu/mariadb/repo/10.1/debian jessie main

Затем,

apt-get install python-software-properties
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
apt-get install software-properties-common
apt-get install mariadb-server mariadb-client

Когда все будет готово, вы сможете запустить mysql -V и увидеть что-то вроде:

mysql  Ver 15.1 Distrib 10.1.9-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
1
20.09.2018, 21:10
1 ответ

Ваша переменная $patternсодержит пробелы --или, возможно, ложные ^M/CR/\rв конце, если accts.csvисходит от машины Windows.

Вы не можете видеть пробелы с echo $pattern, потому что переменная не заключена в кавычки (, как в вызове grep ), поэтому она аккуратно разделена и обрезана механизмом IFS. Вместо этого попробуйте что-то вроде echo "{$pattern}".

Подстригите сами:

$ pattern=$(sed 's/[ \r]//g;q' accts.csv)
1
27.01.2020, 23:42

Теги

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