Portable shell code between Cygwin and Linux

Sebastien Vauban wxhgmqzgwmuf@spammotel.com
Mon Aug 1 06:50:00 GMT 2011

Hi Andrey,

Andrey Repin wrote:
>>> For every shell code that I write, I'd like it to be portable both to
>>> Cygwin on Windows, and to Ubuntu Linux for example.
>>> It's kinda possible, but am blocked with such a use case:
>>> alias vpnup='exec sudo openvpn --config ~/config/client.vpn --writepid /tmp/openvpn.pid &'
>>> While this worked perfectly under Ubuntu, I've had to make up a customized
>>> version for Windows:
>>> alias vpnupwin='cd c:/home/sva/config; openvpn --config client.vpn --writepid c:/cygwin/tmp/openvpn.pid &'
>> Don't use Win32 paths.  Use POSIX paths:
>>   alias vpnupwin='cd /cygdrive/c/home/sva/config; openvpn --config client.vpn --writepid /cygdrive/c/cygwin/tmp/openvpn.pid &'
> Moreover, the very first line is wrong.
> Must be
> alias vpnup='exec sudo openvpn --config $HOME/config/client.vpn --writepid /tmp/openvpn.pid &'
> that's where his problem began, IMO.

That's interesting. I thought this was completely equivalent (~ or $HOME), and
preferred the shorter version.

But you say it's not. Can you comment on this?  Thanks in advance...

Best regards,

Sebastien Vauban

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list