Bash, как другие оболочки, является просто инструментом для координирования других команд. Обычно Вы попытались бы использовать стандартные команды UNIX, но можно, конечно, использовать Bash для вызова чего-либо, включая собственные скомпилированные программы, другие сценарии оболочки, Python и сценарии Perl и т.д.
В этом случае, существует несколько способов сделать это.
, Если Вы хотите считать файл и записать это в другой файл, делая поиск/замену, когда Вы идете, используйте sed:
sed 's/abc/XYZ/g' <infile >outfile
, Если Вы хотите отредактировать файл на месте (как будто открытие файла в редакторе, редактируя его, затем сохраняя его) инструкции по предоставлению к строчному редактору 'исключая'
echo "%s/abc/XYZ/g
w
q
" | ex file
Исключая похож на vi без полноэкранного режима. Можно дать ему те же команды, Вы были бы в vi's ':' подсказка.
Вы не можете использовать настоящую командную строку crypt из, скажем, System.Diagnostics.Process?
using System;
using System.Diagnostics;
namespace Test {
class TrueCrypeStart
{
static void Main(string[] args)
{
string password = getPassword(...);
Process tc= new Process();
tc.StartInfo.FileName = "TrueCrypt.exe";
tc.StartInfo.Arguments = string.Format("/v \"{0}\" /p \"{1}\" /q", ...mount info ..., password); // for quiet!
tc.Start();
}
}
}