2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

脳死でstringsはcatの上位互換だと思ってたら全然違った話

Posted at

おはようございます!
駆け出しエンジニアのさわまりんです!

今回はLinuxコマンドの「strings」と「cat」について詳しく見ていきます。

はじめに

picoCTFでとある問題を解いていたときのことです。

普段通り、catでファイルの中身を見てみようと思ったら
文字化けで内容が何も読み取れませんでした。

そこでstringsを使用してみると見事にflag発見!

試してみたところ、
catで内容が正しく読み取れるファイルは
stringsでも内容を見ることができました。

そこで私は「strings最強やん」って思っていました。
それ以降は、基本はcatを使用するものの
困ったことがあればすぐにstringsを使用していました。

もちろんコマンドの詳細を知ることなく...

それぞれのコマンドの詳細

さすがに知らないまま使うことに危機感を覚えました。
それぞれ--helpで調べると以下のような説明がありました。

cat

Concatenate FILE(s) to standard output.

→ 標準入力のデータをそのまま標準出力に連結

strings

Display printable strings in [file(s)] (stdin by default)

→ 印刷可能な“文字列”として読める箇所を表示

つまり、catはファイルの中身をそのまま表示するのに対して、
stringsはファイルの中から文字列だけを抽出して表示します。

おわりに

「なぜか使える~」というノリでただ使うのではなく、
それぞれどのような違いがあるのか知っておくのは非常に重要ですね。

皆さんもわからないをわからないままにせず、
チラ見するだけでもいいので調べる習慣をつけてみてくださいね。
:penguin::penguin::penguin::penguin::penguin:

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?