Awk (также проверяют Информацию Awk) красив с таким вопросом. Попробуйте:
awk -F'[],] *' '{print $2}' cities
Это определяет разделителя полей -F
как [],] *
- что означает одно происшествие или заключительной квадратной скобки или запятой, сопровождаемой нулем или любым количеством пробелов. Конечно, можно изменить это для удовлетворения любому требованию. Читайте на регулярных выражениях.
После того как строка разделяется, можно сделать то, что Вы хотите с результатом разделения. Здесь, я решил распечатать второе поле только с print $2
. Обратите внимание, что важно использовать одинарные кавычки вокруг awk инструкций иначе, 2$ заменяет оболочка.
Ваш .profile
должен быть загружен, когда Вы входите в систему, не в каждом терминале. Его цель состоит в том, чтобы определить переменные среды и другие настройки для целой сессии (включая Ваш менеджер окон и любую программу, которую Вы запускаете от него, такие как Emacs). Это нормально это ~/.profile
не читается, когда Вы запускаете терминал: редко должно определить переменные среды затем. Ваша оболочка имеет файл инициализации (.bashrc
или .zshrc
или подобный файл), обычно используемый, чтобы определить функции и псевдонимы и установить опции оболочки.
На .profile
, его кузены и как они загружаются, прочитайте этот ответ, и те я связываюсь с. Все системы имеют способ установить переменные сред, когда Вы входите в систему, но существует некоторое изменение относительно как (большое чтение сред .profile
, но некоторые такой, поскольку ваши не делают).
.profile
быть считанным, когда Вы входите в систему. Как сделать, который очень зависит от Вашей операционной системы, метода входа в систему, настольной среды, и т.д. Большинство делает это автоматически, но так как Ваш не делает необходимо привести в порядок некоторый набор. Поэтому скажите нам о том, каковы Ваши OS/DM/DE / …. – Gilles 'SO- stop being evil' 15.09.2011, 02:45.profile
– Startec 13.04.2017, 23:19