コマンドラインでnanoを使用して新しいテキストファイルにテキストを入力するには?
私は次のようなものが欲しいが、nanoを使用します。
echo 'Hello, world.' >foo.txt
結果:
- nanoは非対話型テキスト入力を処理できません。
- echoはすべてのLinux / Unixシステムで利用可能ですが、nanoはすべてのLinux / Unixシステムにデフォルトでインストールされていません。 Echo はシェルスクリプトでも使用できます。
結論として: 最も互換性のある解決策は、次のものを使用することです。
echo 'Hello, world.' >foo.txt
ファイルを生成し、非対話型の方法で入力テキストを埋めるソリューションです。
ベストアンサー1
を使用できますが、here document
この方法で特別な出力文書を提供することはできません。
$ cat | nano <<-EOF
one
two
three
EOF
Received SIGHUP or SIGTERM
Buffer written to nano.save
この動作は、マンページのコメントの下に記載されています。
場合によっては、nanoはバッファを緊急ファイルにダンプしようとします。これは主に nano が SIGHUP または SIGTERM を受信したとき、またはメモリが不足した場合に発生します。バッファにまだ名前がない場合は、nano.saveというファイルにバッファを書き込むか、現在のファイル名に ".save"サフィックスを追加します。その名前の緊急ファイルが現在のディレクトリにすでに存在する場合は、現在のファイル名に「.save」と数字(「.save.1」など)を追加して一意にします。マルチバッファモードでは、nanoは開いているすべてのバッファを対応するパニックファイルに書き込みます。
だから私はNanoが非対話型テキストメッセージの送信に最適な選択ではないと思います。ファイルに複数行のテキストを入力したい場合は、here document
naなしでaを使用することもできます。
cat > foo.txt <<-EOF
> one
> two
> three
>
> EOF
cme@itp-nb-1-prod-01 ~ $ cat foo.txt
one
two
three
たぶんこれがあなたに必要なものかもしれません。