直接从命令行编辑文本

时间:2014-10-29 01:06:34

标签: postgresql postgresql-9.1

我有一个文本栏,用于保留一些降价。

我不想构建一个用于编辑此列条目的Web界面。

有没有办法从命令行启动文本编辑器进行编辑?

或者有没有办法轻松地将纯文本文件转储到特定行的此列中?

很高兴能够启动VIM并编辑一些基本文本而不需要构建界面的开销(这不需要吗?)

2 个答案:

答案 0 :(得分:0)

运行\e应启动默认文本编辑器。

答案 1 :(得分:0)

您可以执行类似Perl代码的示例:

use strict;
use warnings;
use File::Slurp;
use File::Temp;
require DBI;
$|=1;

my $dbh=DBI->connect('dbi:Pg:'); $dbh->{RaiseError}=1;

my ($val)=$dbh->selectrow_array('select foo from bar where id=?', undef, $ARGV[0])
  or die "No row for $ARGV[0]";
my ($fh, $filename) = File::Temp::tempfile();
binmode $fh;
print $fh $val;
close $fh or die $!;
system "vi $filename" and die $?;
$val=read_file($filename);

$dbh->do('update bar set foo = $2 where id=$1',undef,$ARGV[0],$val)
   or die "Row not updated";