コマンドラインにテキストファイルの内容を表示したい。ファイルには5〜6文字しか含まれていません。これを行う簡単な方法はありますか?
回答
cat <を使用する/ h3>
ファイルが短いため、 cat を使用できます。
cat filename
less
の使用
長いファイルの内容を表示する必要がある場合は、ポケットベルを使用できます less など。
less filename
lessを小さなファイルで呼び出されたときにcatのように動作させ、それ以外の場合は-Fおよび-Xフラグ。
less -FX filename
。次のように自分で作成できます:
alias aliasname="less -FX"
シェル構成にエイリアスを追加する場合、永久に使用できます。
od
の使用
ファイルに奇妙な文字や印刷できない文字が含まれている場合は、
od で文字を調べます。例:
$ cat file (ÐZ4 ?o=÷jï $ od -c test 0000000 202 233 ( 320 K j 357 024 J 017 h Z 4 240 ? o 0000020 = 367 \n 0000023
コメント
回答
誰もがcat filenameを使用してファイルのテキストを標準出力に出力しますが、最初の目的はcon cat enating。 catのmanページから:
cat-ファイルを連結し、標準出力に出力します
ファイルの印刷にはcatで問題ありませんが、別の方法があります:
echo "$(<filename)" or printf "%s" "$(<filename)"
( )を返す式の値。この場合、 filename のコンテンツは、$によってechoに展開されます。またはprintf。
更新:
< filename
これは、まさにあなたが望むことを実行します。覚えやすいです。
これは、メニューでファイルを選択して印刷できる例です。
#!/bin/bash select fname in *; do # Don"t forget the "" around the second part, else newlines won"t be printed printf "%s" "$(<$fname)" break done
詳細読み取り:
BashPitfalls-catファイル| sed s / foo / bar />ファイル
Bashリファレンス-リダイレクト
コメント
- 更新:"
< filenameはまさにwhです必要に応じて、… "は誤解を招く恐れがあります。全体として、これは代替案に関する興味深い議論ですが、catの方が簡単だと思います。 - ベア
< filenameはそうではありません。ファイルの内容を表示しますが、cat filenameは表示します。 -
tee < filenameを使用することもできます。 - +1。ここではそれだけでは不十分です。
- 'エコー
"$(<filename)"でLinux内部コマンドを使用するための優れたアイデアです。ありがとう…
echo "$(<filename)"バシズムの場合は
回答
UNIXでテキストファイルを処理するためのツールは、基本的な日常のコマンドです。
UNIXおよびLinuxでは、コンテンツ全体をファイルに出力します
cat filename.txt
または
more filename.txt
または
less filename.txt
最後の数行の場合
tail filename.txt
の場合最初の数行
head filename.txt
回答
次のコマンドを使用して、コンテンツを表示できますテキストファイルの。
cat filename
コメント
- 、
man catを実行します。
回答
1つのオプションは、more
egを使用することです。more file.txt
ただし、lessによって追加されたすべての機能が含まれているわけではありません。
簡単な例の1つは次のとおりです。出力を上にスクロールすることはできません。通常、lessに取って代わられています。これは、
lessが多い
ため、jestで名前が付けられました。 >
コメント
- 名前が少なかった理由についてのわかりやすい説明
回答
私は常に$ less "your file here"を使用します。これは非常にシンプルで、組み込みのインタラクティブな
コマンドで、矢印キーでスクロールできる使いやすいインターフェイスを提供します。
(ほぼすべての* nixシステムにも含まれています)
コメント
-
lessはmore(man lessとman moreを比較してください。私にとっては、2つの厄介な機能があります。 1)代替画面バッファーに切り替わります。終了が少なくなると、表示していたファイルが消えます。2)EOFで、明示的にqと入力する必要があります('はこのためのオプションです)。したがって、新しい環境での最初のアクションの1つは、プロファイルにexport PAGER=/bin/moreを設定し、常にmoreを使用することです。 - @ ott-:1)
-Xフラグを試してください。 2)-Eフラグを試してください。lessにはmoreエミュレーションモードがあります。LESS_IS_MORE環境変数を設定することで有効にできます。moreエミュレーションモードで上にスクロールできます。 - 関連項目: unix.stackexchange.com/questions / 81129 / …
- ただし、一般的に、
lessが過度に-複雑。外部コマンドを実行する機能は、その過度の複雑さの完璧な例です。 - @EvanTeitelman I '私は、grep機能が非常に便利であることに常に気づいています。 -'が
moreをエミュレートしているため、' s多くの追加機能があり、非常にうまく機能します。
回答
ファイルが大きい場合、特定の部分を検索したい場合は、次を使用できます
cat filename | grep text_to_search -ni
また、よりインタラクティブなVimエディター(またはVimがない場合はviエディター)を使用できます。
vim filename Or vi filename
Vim / viは優れたエディターであり、「通常モード」でリーダーとして使用したり、-Rオプションを使用したりすることもできます。多くの機能があります。ファイルを閲覧するのに役立ちます。
コメント
-
vim -Rの短縮形はview。ただし、 xargsおよびvi-「入力は端末からではありません」で説明されているように、リダイレクトは好きではないことに注意してください。 - ありがとうヘッズアップのための@manatwork!私は最近Vimを使い始めましたが、いくつかの機能があるので気に入っています。リダイレクトに関しては、忘れてしまいました。リマインダーをありがとう。現在、私はリモートVMで作業しており、GUIインターフェイスなしでsshを使用しているため、他のGUIエディターが機能しない場合、Vimは非常に役立ちます。'ここでVimを強調した理由。
回答
catコマンドを使用してファイル名の内容を表示します。 cat filename
vimコマンドを使用してファイルを編集します。 vimファイル名
sed -n l fileが役立つ可能性があります。lessには、pgですか、それとも個人的な好みに要約されますか?lessにはもっとありますpgよりも優れた機能。less(1)とpg(1)のマンページ。他のポケットベルもあります。 unix.stackexchange.com/questions/81129/… をご覧ください。lessはおそらく最も広く使用されているポケットベルですが、どちらを使用するかは個人的な好みによって決まります。moreとmostを忘れないでください!