Назад | Перейти на главную страницу

различия% и $> результат командной строки конец строки

Для упражнения мне пришлось создать файл print_groups.sh. Когда я делаю sh print_groups.sh результатом должен быть список групп $ USER, разделенных запятой.

У меня было две разные попытки:

groups $FT_USER | tr " " "," | tr -d '\n'

в результате:

group,group,group%

и

groups $FT_USER | tr " " ","

в результате:

group,group,group

хотя в примере результата в описании упражнения было показано:

$>./print_groups
group,group,group,group$>

Я ожидал, что $> и% - это символы конца строки терминала. Кто-нибудь знает разницу между ними?

В % и $> символы, которые вы видите, являются подсказкой терминала. Поскольку вы удаляете последний возврат каретки с помощью tr -d '\n' сценарий не печатает CRLF, и приглашение при выходе из программы отображается после вывода вместо того, чтобы начинаться с новой строки.

Изменить: в Linux приглашение сохраняется в переменной PS1, Я не уверен насчет BSD или Mac. Вы можете просмотреть его стоимость с помощью echo $PS1.