「lorem ipsum generator」のようなものはありますか?私はそれがLatexやLibreOfficeにも存在することを知っていますが、端末コマンドを探しています。loremipsum 10 >> file1.txt
lorem ipsumの最初の10段落を与えるようなものを入力したいと思います。各段落は各パラグラフの間に1つのLF文字と1つの空の白い線で終わりました。そして、出力は現在のディレクトリのfile1.txtというファイルにリダイレクトされます。
「lorem ipsum generator」のようなものはありますか?私はそれがLatexやLibreOfficeにも存在することを知っていますが、端末コマンドを探しています。loremipsum 10 >> file1.txt
lorem ipsumの最初の10段落を与えるようなものを入力したいと思います。各段落は各パラグラフの間に1つのLF文字と1つの空の白い線で終わりました。そして、出力は現在のディレクトリのfile1.txtというファイルにリダイレクトされます。
回答:
perlライブラリを使用できますlibtext-lorem-perl
。ここでは短い例ですが、コマンドライン引数などを解析するために自由に展開してください。
#!/usr/bin/env perl
use Text::Lorem;
my $text = Text::Lorem->new();
$paragraphs = $text->paragraphs(10);
print $paragraphs;
libtext-lorem-perl
パッケージに単純なlorem
コマンドが含まれているため、カスタムスクリプトは緊急に必要ありません。
Bash One-Linersでこれを見つけました
tr -dc a-z1-4 </dev/urandom | tr 1-2 ' \n' | awk 'length==0 || length>50' | tr 3-4 ' ' | sed 's/^ *//' | cat -s | sed 's/ / /g' |fmt
別のコマンドで制限するか、テキストを無限に生成する必要があります
tr: Illegal byte sequence
tr
(brew install coreutils
)をインストールして、に置き換えtr
てみてくださいgtr
。
brew install gawk
は、mac上で実行されるLinuxのタイプが理由でgawkをインストールする必要があります。
FedoraとArch LinuxのAURにはlorem-ipsum-generator
パッケージがあります:
lorem-ipsum-generator -p 10 -l
まさにあなたが求めていることをします。
別のDIYの代替手段:
info bash -o -|shuf -n50|sed 's/ */ /g;s/^ //'|fmt -w 90
これによりbash
、ドキュメントがstdoutに出力され、shuf
50行がランダムに選択されてパイプされ、sed
複数の先行スペースが削除され、最終的にfmt
約90文字の行にフォーマットされます。
もちろん、これは単なる出発点であり、出力を調整する必要があるかもしれません。そのためにsed
はtr
、他の文字列マニピュレーターが役立ちます。
shuf
、fmt
およびのtr
一部ですcoreutils
(すでにGNU / Linuxディストリビューションにインストールされているの大きなチャンスを持っています)。
info -a bash -o - | shuf -n50 | sed -n 's/ */ /g;s/^ //;/./p' | fmt -w 90 | head -8
技術的にはLorem Ipsumやローカルバイナリではありませんが、Metaphorpsumには類似のテキストを英語で出力できるAPIがあります。次のように呼び出しますcurl
:
curl http://metaphorpsum.com/sentences/3
curl http://metaphorpsum.com/paragraphs/20
さらに良いことに、bashプロファイルまたは次のようなスクリプトでAPI呼び出しを関数として定義できます。
loremipsum () {
if [ "${1}" = "" ] || [ "${2}" = "" ]; then
echo "Usage: loremipsum [paragraphs, sentences] [integer]"
else
curl -s http://metaphorpsum.com/"${1}"/"${2}" && printf "\n"
fi
}
その後、例と非常によく似た方法で使用できます。
loremipsum paragraphs 10 >> file1.txt
次のコマンドは、多くの状況で役に立ちました。
base64 /dev/urandom | awk '{print(0==NR%10)?"":$1}' | sed 's/[^[:alpha:]]/ /g' | head -50
これにより、ランダムに取得されたアルファベット以外の文字base64 /dev/urandom
が空白に置き換えられた50行が得られますsed 's/[^[:alpha:]]/ /g'
。インデックスが10の倍数である各行は、空の文字列に置き換えられます(段落の分離をシミュレートするため)awk '{print(0==NR%10)?"":$1}'
。
| awk '{ print NR,$0 }'
末尾に追加して、番号付きの行(またはニーズを満たす他の行)を取得できます。lipsum
引数として行数を受け入れる実行可能なbashスクリプトが役立つ場合があります。
#!/usr/bin/bash
base64 /dev/urandom | awk '{print(0==NR%10)?"":$1}' | sed 's/[^[:alpha:]]/ /g' | head -$1 | awk '{ print NR,$0 }'
lipsum 100 > output_file
awk '{print}0==NR%10{print""}'
、10行ごとに空白行を追加する必要があります。(2)はい、awk '{ print NR,$0 }'
行番号を印刷しますが、それを行うために特別に設計された他のツール(nl
およびなど cat -n
)があることに注意してください。
base64 /dev/urandom | sed '{0~10 s/^.*//;0~10!s/[^A-z]/ /g;50q0}'
が、これは私にはあまりはっきりしていません。(2)この場合、同じ行番号を付けないnl
でcat -n
ください。
使用する他の2つのPythonライブラリが見つかりました
Lorem Ipsum Generator Webサイト:-http : //lorem-ipsum.perbang.dk/ (段落のnbなどを選択できます)
lorem() {
curl -s http://metaphorpsum.com/sentences/${1-3} | pbcopy
pbpaste | grep .
}
BOUNS:カールの進行を回避し、出力から%を削除し、クリップボードに追加して貼り付けを簡単にしますが、標準出力に表示します
lorem
それは否定できない事実です。スターターはアウトリガーです。不機嫌なガスから教授を分離することはできません。非難されていない親類ではない賞賛されていないオイルに名前を付けることはできません。
lorem 1
神社のようなスウェーデン人は、一番上のシロップから来ています。