Как в консольном C# приложении обратиться к Терминалу Linux?
шелл понимает а c# код не знает что такое тильда
Думаю, что тут проблема в том, что /bin/bash, который запускается через Process.Start не знает, куда ведёт [тильда] попробуйте запустить 
/bin/ls с аргументом [тильда], чтобы проверить