Remove last space from иначе

I want to поверьте an иначе for xfreerdp, and I need to приложи тебя the/v: parameter in my иначе with the server ямс, that гm obviously providing when invoking this иначе.

Иначе:

alias r='xfreerdp /u:user /p:password /w:1300 /h:768 /sec:rdp /cert-ignore +cliprdr --plugin rdpsnd --plugin rdpdr --data disk:media:/tmp/RDP /v:'

Bash:

r mywindows.server.com

Result:

tcp_connect: getaddrinfo (Não há endereço associado com или nome) Ошибка: protocol security negotiation or connection failure

Is there в way to приложи тебя your bash иначе with the next parameter?

Thank you in advance.

3
задан 26 October 2015 в 19:27

3 ответа

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

В подобных случаях, Вы должны использовать функцию:

r_d () { 
xfreerdp /u:user /p:password /w:1300 /h:768 /sec:rdp /cert-ignore +cliprdr --plugin rdpsnd --plugin rdpdr --data disk:media:/tmp/RDP /v:"$1"
}

Теперь Вы можете сделать:

r_d server.foobar.com
4
ответ дан 1 December 2019 в 15:37

Вы не можете дать параметры псевдонимов, НО Вы можете обмануть его с xargs, или более конкретно это - флаг -I, который позволяет заменять последовательность. В этом примере я заменяю сообщение, это, чтобы заменить REPLACESTRING любым xargs получает.

Отредактированный псевдоним:

alias r='xargs -I REPLACESTRING  xfreerdp /u:user /p:password /w:1300 /h:768 /sec:rdp /cert-ignore +cliprdr --plugin rdpsnd --plugin rdpdr --data disk:media:/tmp/RDP /v:REPLACESTRING'

Примечание: notsure, как Ваш xfreerdp работы команды, я заметил другие флаги такой как /p:password отпуск никакие места между флагом и полем данных, поэтому приспособьтесь /v: и REPLACESTRING интервал, поскольку Вы чувствуете себя необходимыми.

Пробег как так:

r <<< "server.somedomain.com"

или

echo "server.somedomain.com" | r
1
ответ дан 1 December 2019 в 15:37

Используйте функцию в качестве псевдонима вместо команды только. Тогда Вы можете использовать параметр в теле функции, как это описано в другой ответ .

0
ответ дан 1 December 2019 в 15:37

Другие вопросы по тегам:

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