Красный и синий переключаются в xfce

[1128816] В [1129348]$(echo "echo 'a'; echo 'b'")[1129349] оболочка видит замену команды. И все. Итак, это будет простая команда, аргументы которой являются результатом оператора split+glob при расширении подстановки команды.

Оболочка примет вывод [1129350]эхо "echo 'a'; echo 'b'"[1129351], в данном случае [1129352]echo 'a'; echo 'b' \n[1129353], удалит символы "trailing newline" так, чтобы стало [1129354]эхо 'a'; эхо 'b'[1129355], разделив это в соответствии со значением переменной [1129356]$IFS[1129357]. 

Если [1129358]$IFS[1129359] не был изменен по умолчанию, то это будет 4 слова: [1129360] echo[1129361], [1129362]'a'; [1129363], [1129364] echo[1129365] и [1129366]'b'[1129367]. Каждое из этих слов будет подвержено глобусу. Здесь ни одно из этих слов не содержит глобусных символов, поэтому эти слова останутся такими, какие они есть.

 Итак, у нас есть 4 аргумента для выполнения простой команды. Первый аргумент будет использован для получения команды на выполнение. [1129368]echo[1129369] встроено в большинство оболочек. Поэтому оболочка командной строки вызовет свой [1129370]echo[1129371] встроенный с этими 4 аргументами.

echo[1129373] игнорирует свой первый (0-й) аргумент и выводит остальные, разделенные пробелами и завершенные символом новой строки. Некоторые реализации [1129374]echo[1129375] расширяют экранирующие последовательности обратного слеша, но здесь их нет. Поэтому [1129376]echo[1129377] выдаст: Если вы хотите, чтобы эта строка интерпретировалась как код оболочки, используйте [1129378]eval[1129379]:

Это также распознается как простая команда. Из-за кавычек оболочка видит два "слова": [1129380]eval[1129381] и [1129382]echo 'a'; echo 'b'[1129383]. Опять же, они будут составлять аргументы к команде, которая является производной от первой.
Здесь команда является командой построения оболочки [1129384]eval[1129385]. И снова, [1129386]eval[1129387] игнорирует свой первый аргумент. Что она делает, так это конкапсулирует остальные аргументы (здесь только один) с пробелами и интерпретирует полученную строку как код оболочки. При интерпретации

оболочка видит нецитируемый [1129388];[1129389], который разделяет команды. Первая команда интерпретируется как простая команда, которая заканчивается вызовом [1129390]echo[1129391] с двумя аргументами... и т.д.[1128833].
2
01.10.2014, 16:12
1 ответ

Как бы то ни было, я только что установил Xfce на систему Ubuntu 14.04 (хотел это сделать - я ненавижу Unity3D Desktop), и она выглядит просто отлично. Так что, похоже, у вас проблемы с аппаратным обеспечением, и я рекомендую вам связаться со службой поддержки BeagleBone Black.

0
27.01.2020, 22:57

Теги

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